不知道有没有小伙伴跟我一样xcode11新建项目之后,ios13+的真机或者模拟器黑屏呢?
工程里除了有APPdelegate.h和APPdelegate.m文件外还有Scenedelegate.h和Scenedelegate.m文件。如图
截屏2020-06-19下午1.21.35.png
是由于iOS13的生命周期发生了改动,之前应用生命周期这个东西,一直到目前的iOS 12这个版本都是在AppDelegate里头(也就是UIApplicationDelegate里面),但是ios13版本包括之后,AppDelegate(UIApplicationDelegate)控制生命周期的行为交给了SceneDelegate(UIWindowSceneDelegate)
AppDelegate里面出现了两个方法:
截屏2020-06-19下午1.25.01.png
处理黑屏的方法如下:
1,删除或注释AppDelegate.m文件里上图所示的两个方法。
2,删除Scenedelegate.h和Scenedelegate.m文件。
3,删除info.plist文件里箭头所指的属性。
截屏2020-06-19下午1.28.24.png
4,最后一步,别忘了在APPdelegate.h里面添加window属性。
@property (strong, nonatomic) UIWindow * window;
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Override point for customization after application launch.
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
self.window.backgroundColor = [UIColor whiteColor];
[self.window makeKeyAndVisible];
return YES;
}
重新运行就可以了......
网友评论