‘设置UINavigationController时,不能对类型:(null)’进行比较查询

我的应用程序崩溃在应用程序委托中。

它抛出的错误是:

由于未捕获的exception’NSInvalidArgumentException’而终止应用程序,原因:’无法对类型执行比较查询:(null)’

我的代码如下。 我已经离开了日志记录,所以你可以看到我在检查的地方:

self.viewController = [[ParseStarterProjectViewController alloc] initWithNibName:@"ParseStarterProjectViewController" bundle:nil]; NSLog(@"View controller is %@",self.viewController); UINavigationController *navController = [[UINavigationController alloc] initWithRootViewController:self.viewController]; NSLog(@"Nav controller is %@",navController); NSLog(@"Self window is %@",self.window); self.window.rootViewController = navController; 

当它试图运行最后一行时,它会断开,将rootViewController设置为navController。

3条NSLog线的结果如下:

 View controller is  Nav controller is  Self window is <UIWindow: 0x1fd97c90; frame = (0 0; 320 480); opaque = NO; autoresize = RM+BM; layer = > 

看起来对我来说看起来没有任何东西,这就是为什么我非常困惑。

我刚刚遇到这个问题,这是因为我在equalTo:[PFUser currentUser]中做了一个equalTo:[PFUser currentUser] ,但那时没有登录用户。

这真是一个关于“如何从崩溃日志中获取更多信息”的问题。 rmaddy的评论指出我在正确的方向。

肖恩的答案在这里把我排除在外。