2013-03-21 25 views
1

我想从UITabBarControler推送视图。我的应用程序的层次结构是这样的:如何在UITabBarController中推送UIViewController

的UINavigationController - > UIView的 - >的UITabBarController

我有一个UITabBarController有3个标签。在第一个标签上,我添加了一个UITableView。我该如何做到这一点,以便表中的单元格选择无需从选项卡控件导航即可推入另一个视图?

+0

你指从tableview中这是一个选项卡内推的详细视图酒吧?您准确地使用了 – 2013-03-21 16:40:30

+0

,但标签栏已在导航控件中。 – Mihin 2013-03-21 16:46:30

回答

1

如果您确实需要在标签栏界面内推导航控制器类型,您需要在导航界面内部的标签栏界面。

尽管您最简单的解决方案可能是重新考虑您的界面。

+0

任何教程或使用该代码的代码的一部分,我可以完成我的工作 – Mihin 2013-03-21 16:36:03

0

像这样:

How to handle UINavigationControllers and UITabBarControllers iOS 6.1

这是一个更复杂的版本,但看看标签栏控制器,它是与它的包含viewControllers关系。

基本上你不希望你的tabBarController被嵌入到那个导航控制器中。相反,每个包含viewController想要推动应该嵌入在它自己的导航控制器。所以在你的情况下,你至少会为你的第一个标签的tableViewController做到这一点。

3

你的问题是你正在做的安排。

您正在使用UINavigationController -> UIView -> UITabBarController,所以UITabBarControllerUINavigationController的子视图。当您浏览时,您弹出的视图是从导航控制器中删除,因此其所有内容(包括UITabBarController)都将消失。

您结构需要是这样的:

UITabBarController -> UINavigationController -> UIView,这意味着每每一个需要它的标签一个UINavigationController

例如,如果需要使用两个标签内部推,该结构应该是这样的:

UITabBarController

| --> UINavigationController 1 --> UIView 1 --> (push segue) --> UIView 1B 

| --> UINavigationController 2 --> UIView 2 --> (push segue) --> UIView 2B 
+0

感谢格式化,我不知道如何去做。 – 2013-05-17 15:41:17

相关问题