是否可以将navigationcontroller添加到非rootviewcontroller

时间:2013-07-09 18:37:27

标签: ios uinavigationcontroller

我有一个tabbar应用程序,我想将navigationcontroller添加到非rootviewcontroller。

有可能吗?

感谢您的帮助。

  • 更新23:10 GMT + 2 enter image description here

2 个答案:

答案 0 :(得分:1)

UINavigationControllerUIViewController的子类,因此您可以将其呈现,或者您可以将其视图添加为子视图(假设您不会释放UINavigationController实例本身会有有趣的副作用)。

您不能做的是将导航控制器推入一些提供的容器视图控制器。就像将导航控制器推入另一个导航控制器堆栈一样。

答案 1 :(得分:1)

选项卡栏控制器中的每个选项卡都可以拥有自定义视图控制器。您的自定义视图控制器可以是导航控制器。

但是,在导航控制器中,如果您希望添加导航控制器,例如点击一个tableview单元格,则必须在导航控制器上以模态方式显示它。您无法将导航控制器推入另一个导航控制器。

例如。

  
      
  1. 为您要呈现的导航控制器实例化根视图控制器   YourAnotherRootVC * anotherVC = [[YourAnotherRootVC alloc] initWithNibName:@“YourAnotherRootVC”bundle:[NSBundle mainBundle]];

  2.   
  3. 实例化UiNavigationController   UINavigationController * navController = [[UINavigationController alloc] initWithRootViewController:anotherVC];

  4.   
  5. 将其呈现给当前的导航控制器。   [self.navigationController presentModalViewController:navController animated:YES];

  6.