‘设置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的评论指出我在正确的方向。
肖恩的答案在这里把我排除在外。