Xcode11 新变化 SceneDelegate

相关的原理知识就不做描述了,有兴趣的可以自己百度下,本文仅说一些可能用的上的操作,如有疑惑或不妥之处欢迎留言交流.

Xcode11之后 如何忽略SceneDelegate跟之前一样仅使用AppDelegate完成项目初始化

1.注释掉AppDelegate中的UISceneSession的代理方法
image.png
2.添加@synthesize window = _window;代码在图示位置
image.png
3.做完上面两步后,此时的工程就跟之前的Xcode创建的工程一样了,该什么骚操作依旧什么骚操作

适应新的变化来设置self.window.rootViewController

初始化window方法需要改变:
现在不再Appdelegate的- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions进行初始化,转交给SceneDelegate的willConnectToSession:方法进行根控制器设置:

- (void)scene:(UIScene *)scene willConnectToSession:(UISceneSession *)session options:(UISceneConnectionOptions *)connectionOptions {

    UIWindowScene *windowScene = (UIWindowScene *)scene;
    self.window = [[UIWindow alloc] initWithWindowScene:windowScene];
    self.window.frame = windowScene.coordinateSpace.bounds;
    self.window.rootViewController = [UITabBarController new];
    [self.window makeKeyAndVisible];
}

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 前几天更新好Xcode11后,运行旧项目,相安无事,心里捏了一把汗,终于没有跟往年那样一更新就给你一大堆报错了。刚...
    经天纬地阅读 61,894评论 30 129
  • iOS13 项目中的SceneDelegate类有什么作用?自从Xcode11发布以来,当你使用新XCode创建一...
    代码移动工程师阅读 13,851评论 3 36
  • iOS13 项目中的SceneDelegate类有什么作用?自从Xcode11发布以来,当你使用新XCode创建一...
    乐Coding阅读 30,924评论 14 61
  • 好久之前跟新到Xcode11,跟新完成后打开以前老项目并未有什么太大变化,也就没有在意,今天新建一个项目,创建完成...
    透支未来阅读 5,203评论 0 1
  • 作者唯一QQ:228544117。。。。。 =========后面的都要新建一个文章 AppDelegate.h ...
    CC_iOS阅读 4,722评论 0 0