Xcode删除自带SceneDelegate并创建自定义ViewController
发布网友
发布时间:2023-01-14 03:36
我来回答
共1个回答
热心网友
时间:2023-09-24 06:53
Xcode更新增加了SceneDelegate文件,现在创建一个新的项目会出现一下情况(xcode版本11.3)
iOS13之前,Appdelegate的作用是全权处理App生命周期和UI生命周期;
iOS13之后,Appdelegate的作用是只处理 App 生命周期, 而UI的生命周期将全权由新增的SceneDelegate来处理.这里就教大家如何删除SceneDelegate;
1.在项目的info.plist文件右键,Open As --> Source Code打开plist文件,如图:
2.删除SceneDelegate相关配置,如图所示
3.然后再项目中删除掉SceneDelegate.h和SceneDelegate.m文件;delete --> Move to Trash
4.然后删除或者注释掉AppDelagate.m文件中 UISceneSession lifecycle方法
5.在AppDelagate.h文件中加入UIWindow属性
到这里就完成了SceneDelegate文件的删除工作,如果需要自定义ViewController,继续往下:
6.选中Main.storyboard,然后选中xib页面,在右侧去掉Is Initial View Controller勾选
7.然后选中项目中viewController.h和.m文件以及Main.storyboard和LaunchScreen.storyboard,邮件delete -->Move to Trash
8.创建自定义根视图(这里是RootViewController,根据自己需求设置)
9.设置带导航栏的RootViewController根视图
10.然后需要将general中的Main Interface和Launch Screen File置空
11.在项目info.plist中添加key:Launch screen interface file base name(不添加会出现上下黑边)
12.到此就大功告成