无论何时运行应用程序,我的应用程序都会提供一个模态视图控制器(密码输入表单)。我存在于两个应用委托方法的视图控制器:为什么在applicationDidFinishLaunchingWithOptions中不显示模式视图控制器?
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
[self.window.rootViewController presentModalViewController:self.passcodeViewController animated:NO];
//...
return YES;
}
- (void)applicationDidBecomeActive:(UIApplication *)application
{
if (!self.passcodeViewController.view.window) {
[self.window.rootViewController presentModalViewController:self.passcodeViewController animated:NO];
}
}
呼叫呈现在application:didFinishLaunchingWithOptions:
方法不呈现视图控制器,其中如在applicationDidBecomeActive:
呼叫确实模态视图控制器。为什么是这样?
编辑:我想提一提,每下面的评论,我是用故事板和self.window.rootViewController确确实指向一个对象(基本上,它不是零)
rootViewController如何分配给窗口? MainWindow.xib中?故事情节?我的猜测是,self.window或self.window.rootViewController尚未在didFinishLaunchingWithOptions中分配。 – jsd 2012-02-02 23:29:50
故事板 - 我忘了提及self.window.rootViewController确实指向视图控制器,即。如果主要的笔尖(或者在我的情节故事板)已经被加载,它不是零 – 2012-02-03 00:19:42