美文网首页
Xcode 11 新建项目多窗口问题

Xcode 11 新建项目多窗口问题

作者: 李丘 | 来源:发表于2019-11-05 12:00 被阅读0次

    问题

    Xcode 升级到11之后,新建项目发生了一些变化:新增了 SceneDelegate 文件,这是 iPad 多窗口显示使用的,如果我们仅仅是想创建一个纯代码的 iPhone 的项目,我们就需要对项目做一些修改。

    不需要多窗口

    1. 删掉 info.plist 中的 Application Scene Manifest 配置
    2. 去掉 TARGETS - General - Deployment Info 设置中的 iPad 勾选
    3. 删除 SceneDelegate 文件
    4. AppDelegate 中增加 window 属性,注释掉 UISceneSession lifecycle 代理方法
    scene Manifest.png
    iPad.png

    需要多窗口

    如果需要用到多窗口,需要在 SceneDelegate 代理中创建新的 window:

    - (void)scene:(UIScene *)scene willConnectToSession:(UISceneSession *)session options:(UISceneConnectionOptions *)connectionOptions {
       
        if (@available(iOS 13.0, *)) {
            UIWindowScene *windowScene = (UIWindowScene *)scene;
            self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
            [self.window setWindowScene:windowScene];
            [self.window setBackgroundColor:[UIColor whiteColor]];
            
            ViewController *vc = [[ViewController alloc] init];
            UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:vc];
            self.window.rootViewController = nav;
            [self.window makeKeyAndVisible];
        }
    }
    

    相关文章

      网友评论

          本文标题:Xcode 11 新建项目多窗口问题

          本文链接:https://www.haomeiwen.com/subject/fuusbctx.html