我有一个应用程序,每个应用程序都有对应的UINavigationController
,它们都放在UITabBarController
的内部,在屏幕底部显示5个选项卡。UITabBarController中的隐藏的UINavigationController
当按下对话框按钮时,我想要显示另一个UIViewController
(位于UINavigationController
内)。
该视图只能以编程方式加载和卸载;即它不应该出现在标签栏中。但是,我希望标签栏始终可见。
如果我将[UINavigationController view]
添加到[self window]
UITabBar
被覆盖。如果我将它添加到任何其他图层,则UINavigationController
会增加它对状态栏的补偿,使其显得比预期的更低。
解决方法是将第6个UINavigationController
与其他的UITabBar
相加,但隐藏其tabBarItem
。然后我可以使用tabBar
s selectedIndex
属性将其隐藏。
通过UIViewController
访问tabBarItem
显示没有明显的方法。
@wisequark,我想你完全误解了,你几乎改写了我的应用程序的体系结构。不过,对于每个视图,我都有一个单独的导航控制器,因为它们是互斥的,没有“钻取”的概念。
@Kendall,这是我期望我必须做的 - 让模态视图带有一个隐藏按钮来恢复正常的界面。但是保持标签栏始终可见,这将是很好的,所以我只是想知道有没有人知道一种方式。