我有一个带有导航控制器选项卡的标签栏控制器。第一个默认选项卡称为“NowViewController”。所以在我的AppDelegate的application:didFinishLaunchingWithOptions
我有以下内容:
// Set up MainWindow
NowViewController *nowViewController = [[[NowViewController alloc] initWithNibName:@"NowViewController" bundle:nil] autorelease];
nowViewController.context = [self managedObjectContext];
self.tabBarController.selectedViewController = nowViewController;
self.window.rootViewController = self.tabBarController;
[self.window makeKeyAndVisible];
我需要传递Core Data的托管对象上下文,这就是我实例化NowViewController对象的原因。
现在在我的MainWindow.xib中,我只需将导航控制器设置如下:
启动应用程序时,我得到一个带有NewsViewController的空白页面。当我点击“Now”选项卡时,我会得到一个导航栏,上面写着“Root View Controller”,实际上它应该说“Now”。我已经在NowViewController的self.title = @"Now"
方法中拥有ViewDidLoad
。
为什么我会遇到这种问题?
谢谢!
答案 0 :(得分:0)
固定
我刚将上面发布的AppDelegate代码行改为:
NowViewController *nowViewController = (NowViewController *) [self.navigationController topViewController];
nowViewController.context = [self managedObjectContext];
self.window.rootViewController = self.tabBarController;
[self.window makeKeyWindow];
如果有人能够解释这行代码,我真的很感激:
NowViewController *nowViewController = (NowViewController *) [self.navigationController topViewController]