-4

请帮我找出崩溃的原因。我知道有很多同名的问题,但我找不到解决我的问题的方法。我的问题是我的 ios7 应用程序崩溃(访问错误),旧版本可以正常工作。这是我的代码:

- (void)updateLine:(NSNotification*)notification
{
    BOOL registered =[(notification.userInfo)[kRADialePushViewNotificationRegistration] boolValue];
    if (!registered) {
        if (self.navigationController) {// it crash this line
            [self.navigationController popViewControllerAnimated:YES];
        }
    }
}
4

1 回答 1

0

我发现这里的问题是:self.navigationController 为零。但我不知道为什么 ios7 不接受访问 nil navigationController 而我可以在 ios6 或更早版本上进行访问。我的解决方案是检查视图是否是当前视图(这是我的 DND 视图),我调用 popViewController,因为如果视图是当前视图,您可以获得值不为零的 self.navigationController。我的代码是:

- (void)updateLine:(NSNotification*)notification
{
    BOOL registered =[(notification.userInfo)[kRADialePushViewNotificationRegistration] boolValue];
    if (!registered) {
        if (self.isloaded && self.view.window){
          if (self.navigationController) {
              [self.navigationController popViewControllerAnimated:YES];
           }
         }
    }
}
于 2013-09-08T03:00:06.800 回答