我有一个应用程序,最初有一个TabBarController,每个选项卡都是一个ViewController,每个选项卡都有一个调用其他控制器的按钮。
那我该如何构建呢?有一个主要的rootviewController(如果是这样,怎么样?)?或者在appdelegate中只调用tabBarController,并在选项卡内的每个viewControllers中调用其他控制器?
什么是最好的方式,以便我能够前进,回归并灵活地转换视图?
不知道我是否清楚自己......
谢谢你们。
答案 0 :(得分:0)
通常,您将从名为“Tab Bar Application”的模板开始,从Xcode 4开始,加载MainWindow Nib,其中包含一个标签栏,并且标签栏在IB中设置为具有2个视图控制器,称为“ FirstViewController“和”SecondViewController“......
如果它适合您,您可以遵循该模式,否则您可能希望从基于视图的应用程序开始并添加您自己的标签栏。我个人觉得通过UITabBarDelegate
更容易控制标签栏,特别是如果你打算做一些有点深奥的事情。
修改强>
基本上是两种方式之一,如果您计划加载导航控制器堆栈或单个模态视图。
1)
ThirdViewController * controller = [[ThirdViewController alloc] initWithNibName:@"ThirdViewController" bundle:nil];
UINavigationController * myNavigationController = [[UINavigationController alloc] initWithRootViewController:controller];
[self presentModalViewController:myNavigationController animated:YES];
[controller release];
[myNavigationController release];
2)
ThirdViewController * controller = [[ThirdViewController alloc] initWithNibName:@"ThirdViewController" bundle:nil];
[self presentModalViewController:controller animated:YES];
[controller release];
通过在调用present模式的视图控制器上调用以下内容,返回Tab环境。
[自 dismissModalViewControllerAnimated:YES];