- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我正在尝试在 UITabBar.viewControllers 数组中选择我的 UINavigationControllers 之一。
我之前尝试过设置 UITabbarController.selectedIndex,但 Apple 文档说:“要选择更多导航 Controller 本身,您必须改为更改 selectedViewController 属性的值。”
AppDelegate *appDelegate = (AppDelegate*)[UIApplication sharedApplication].delegate;
UINavigationController *navController = [appDelegate.objTabBarController.viewControllers objectAtIndex:5];
[appDelegate.objTabBarController setSelectedViewController:navController];
这样做很好,但是当我变回MoreViewController的 ListView 时,左侧的图标消失了,不会再出现。
一切正常,用手指选择它。
以编程方式选择时出现错误 -> 图片消失了
对我做错了什么有什么建议吗?
最好的问候,史蒂夫
最佳答案
选择更多的导航 Controller
要选择 moreNavigationController,您必须设置 selectedViewController
:
self.tabBarController.selectedViewController = self.tabBarController.moreNavigationController;
原因很简单:moreNavigationController 不在tab bar controller 的viewControllers
中,所以无法通过index 选中。
要直接选择“更多” Controller 之一,您可以设置 selectedViewController
属性:
self.tabBarController.selectedViewController = viewController5;
或者你可以设置selectedIndex
:
self.tabBarController.selectedIndex = 5;
修复消失的标签栏图像
消失的标签栏图像是由于在导航 Controller (由标签栏 Controller 生成的 moreNavigationController
)内部使用导航 Controller (用于设置)引起的。要修复它,有两种解决方案:
不要为more部分添加导航 Controller ,而是直接添加 Controller 。 Controller 结构如下所示,假设所有选项卡中的 Controller 都需要导航:
tabBarController
+ navigationController
+ viewController0
+ navigationController
+ viewController1
+ navigationController
+ viewController2
+ navigationController
+ viewController3
+ viewController4
+ viewController5
在其导航 Controller 上设置设置 Controller 的tabBarItem
(您只需执行一次):
UINavigationController *settingsNavigationController = [appDelegate.objTabBarController objectAtIndex:5];
UIViewController *settingsRootController = settingsNavigationController.viewControllers[0];
settingsNavigationController.tabBarItem = settingsRootController.tabBarItem;
关于iphone - 以编程方式选择后,UITableView 中的 UITabBar MoreViewController 图像消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12767975/
好吧,我是个罪人。好消息是:我使用多个 Storyboard(耶!)坏消息:我没有足够的灵感来摆脱“更多..”标签。 现在:我需要使 moreviewcontroller 看起来像我的应用程序的其余部
我在 UITabBarController 上有一个带有“更多...”按钮的 iOS 应用程序。 当我点击“更多...”时,会出现带有“编辑”按钮的新 View 在右上角。单击“编辑”会显示编辑模式下
我有 UITabbarMoreController,其中包含一些 UINavigationController。这些 UINavigationControllers 然后包含我的自定义 View Co
除了实际创建 UITabBarController 并执行相关实验之外,iOS 是否有一种编程方式来获取可以在 tabBarController 中显示的最大选项卡数量,而无需“更多”选项卡? 这对我
我正在尝试在 UITabBar.viewControllers 数组中选择我的 UINavigationControllers 之一。 我之前尝试过设置 UITabbarController.sele
我是一名优秀的程序员,十分优秀!