iOS13之后,Appdelegate负责生命周期,scene负责UI。
旧项目适配场景步骤
- Info.plist文件中添加Application Scene Manifest配置;
- 实现UIApplicationDelegate新增的管理scene生命周期的方法;
- 实现scene代理。
Application Scene Manifest
Enable Multiple Windows
标记该app是否支持多窗口,目前iOS是不支持多窗口,只有iPadOS支持多窗口
Scene Configuration
字典结构,用来添加scene配置信息。包括External Display Session Role
的数组结构和Application Session Role
External Display Session Role
和外部设备有关系
Application Session Role
可以配置的信息有四个,ClassName,Configuration Name、Delegate Class Name、Storyboard Name
-
Class Name
:scene的类名,必须是scene的子类,如果是Application Session Role
,必须是UIWindowScene
的子类 - Configuration Name:为这个配置起名,必选值
- Delegate Class Name:scene代理的类名,如果是
Application Session Role
,必须实现UIWindowSceneDelegate
scene对象和scene代理都不允许手动创建,只能在info.plist指定
网友评论