我想要做的是有一个根视图控制器来管理我的应用程序的基本视图,然后使用 iOS 5+ 包含 API addChildViewController() 将 UINavigationViewController(具有自己的视图控制器堆栈)添加到该视图控制器。
编辑:基本视图控制器的目的是控制一个动态视图,它是整个应用程序的一致背景。涉及动画,因此实际的背景视图需要在每个视图中保持相同。
我的问题是这是否是最佳实践和 Apple 批准的完成此类设计的方式?我在研究中一直在阅读相互矛盾的建议,并希望确保我的应用不会被拒绝。
这是我的 AppDelegate 中的代码,它显示了我正在尝试做的事情:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
BaseViewController * base = [[BaseViewController alloc] init];
PlayerViewController * player = [[PlayerViewController alloc] init];
UINavigationController * nav = [[UINavigationController alloc] initWithRootViewController:player];
[nav setNavigationBarHidden:YES];
[base addChildViewController:nav];
[base.view addSubview:nav.view];
[self.window setRootViewController:base];
[self.window makeKeyAndVisible];
return YES;
}
谢谢你的帮助。