2010-08-14 100 views
1

我从苹果给出的基于导航的模板创建了一个应用程序。现在我想添加第二个导航控制器到我的应用程序,包括一个新的UITableView。任何人都可以展示我如何做到这一点?谢谢!iPhone Sdk:如何添加第二个UINavigationController?

+0

你确定你想要一个新的导航控制器,而不是一个新的视图控制器? – 2010-08-15 07:51:02

+0

是的,因为我想创建一个全新的视图heirachy。 – 2010-08-15 09:39:52

+0

是否要在工具栏或选项卡栏之间切换这些导航控制器?或者导航控制器应该出现在模态对话框中?或者第二个需要什么? – Codo 2010-08-15 16:26:53

回答

1

我认为这可以做到。在您的应用程序委托中,您通常会执行诸如 [window addSubview:navController.view]之类的操作。 UIWindow只是一个UIView。所以,如果你在UIViewController创建两个UIView高德将包含两个导航控制器,你应该可以做类似的事情:

@interface MyViewController : UIViewController 
{ 
    UIView* upperView; 
    UIView* lowerView; 
} 

等等

MyUpperRootViewController* myUpperRVC = [[MyUpperRootViewController alloc] init... 
UINavigationController* myUpperNavController = [[UINavigationController alloc] initWithRootViewController:myUpperRVC]; 
[upperView addSubview:navController.view]; 
[myUpperRVC release]; 

lowerView类似的东西。

在推送到控制器的根视图或子视图视图中,以通常的方式访问它们,就好像有一个导航控制器一样。 [self.navigationController push...应该正常运作。

对于在视图控制器中(和在外)动画,只需将动画应用于视图 - upperView或lowerView。您可能希望从可见显示中将其帧删除,然后将其更改为动画块中可见的内容。

相关问题