ios 6 iPhone window.rootViewController 崩溃

Posted

技术标签:

【中文标题】ios 6 iPhone window.rootViewController 崩溃【英文标题】:ios 6 iPhone window.rootViewController crashes 【发布时间】:2013-02-18 15:18:10 【问题描述】:

我的应用在 iPad 和 iPhone 上都可以在 ios 5.1 上正常运行。在 iOS 6 中,应用程序在 iPad 上运行良好,但在设置 window.rootViewController = navigationViewController 时在 iPhone 中崩溃。我在application didFinishLaunchingWithOptions 的这段代码处设置了异常断点来停止执行。我什至尝试将其添加为[window addSubView:navigationViewController.view],但没有运气。有没有人遇到过类似的问题。

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:    (NSDictionary *)launchOptions

     self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
     rootViewController = [[SpringboardViewController alloc] initWithNibName:@"SpringboardViewController" bundle:nil];   
     UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:rootViewController];

    self.window.rootViewController = nav;
    self.window makeKeyAndVisible];
    return YES;

【问题讨论】:

你能在代码中发布 didFinishLaunchingWithOptions 方法吗 这完全适用于 iPhone 和 iPad ios 5.1 也适用于 ios 6.0 iPad 问题仅适用于 iPhone 6.0。我已经粘贴了上面的代码。调试器停止在 self.window.rootViewController = nav ; 没有任何错误日志。它只是在控制台中打印 lldb 【参考方案1】:

你能写一个例外吗?

看看这些问题

applications expected to have a root view controller console

Applications are expected to have a root view controller at the end of application launch

【讨论】:

ogres 感谢您的回复,但我的应用程序在 5.1 上运行良好,问题仅适用于 iPhone 6.0,也没有错误显示以提供有关我的问题的更多信息。【参考方案2】:

感谢您的回复,我发现了问题,问题出在application supportedInterfaceOrientationsForWindow,我返回UIInterfaceOrientationPortrait而不是UIInterfaceOrientationMaskPortrait,因为应用程序调试器在self.window.rootViewController = nav,我认为这句话有问题。

感谢拉文达兰和食人魔。

【讨论】:

以上是关于ios 6 iPhone window.rootViewController 崩溃的主要内容,如果未能解决你的问题,请参考以下文章

iOS 隐藏 iPhone 6 和 6+ 的状态栏

iPhone 2月6号报价:年前最低 一天

如何为 iphone 3.5 和 iphone 4 英寸屏幕(ios 6 和 ios7)设计 Single xib?

ios 6 iPhone window.rootViewController 崩溃

新的 iOS 应用程序是不是需要适配 iPhone 6 和 6+?

iOS 纯代码适配iPhone6,6+