为什么didFinishLaunchingWithOptions方法中需要以下行?
self.window.rootViewController = self.navigationController;
也就是说,注意到在MainWindow XIB中的Interface Builder中已经有导航控制器,它的导航栏和RootViewController在它的层次结构中。
整个方法的复制供参考:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
// Override point for customization after application launch.
// Add the navigation controller's view to the window and display.
self.window.rootViewController = self.navigationController;
[self.window makeKeyAndVisible];
return YES;
}
答案 0 :(得分:7)
您还没有在MainWindow.xib中做过一件事:将导航控制器的视图添加到窗口。
该行
self.window.rootViewController = self.navigationController;
就是这么做的。替代方案(以及我们在iOS 3中编写的内容)是:
[self.window addSubview:self.navigationController.view];