异常描述:
'Application windows are expected to have a root view controller at the end of application launch'
原因:
- 现阶段的iOS应用开发,我们必须在AppDelegate中设置self.window.rootViewController,但是在以前老版本的xcode中可以不设置,iOS应用也可以照常运行。因此如果一些老的项目或者照一些老的iOS教程书籍敲的代码,运行就可能会出现这个的异常
解决方案:
在 AppDelegate.m
的application
方法中添加一下代码,手动设置 rootViewController。
// // 在高版本的iosz开发中需要自己手动设置 rootviewcontroller
// //解决该问题的代码
NSArray *windows = [[UIApplication sharedApplication] windows];
for(UIWindow *window in windows) {
if(window.rootViewController == nil){
UIViewController *vc = [[UIViewController alloc]initWithNibName:nil
bundle:nil];
window.rootViewController = vc;
}
}
// //解决该问题的代码
如图所示: