iOS 纯代码UI 新项目配置
为什么纯代码写 UI?
- Storyboards 由于其复杂的 xml 结构更容易出现兼容性问题, 合并的时候相对纯代码麻烦.
- 使用纯代码更方便复用,使代码库更简洁.
- 在一个位置完成所有 UI 自定义, 而 Storyboard 需要反复点击 inspectors 去设置.
- Storyboard 增加了 UI 和代码的耦合度, 如果没有正确配置好 outlet 和 action 会造成崩溃,且这些问题并不会被编译器监测到.
新项目纯代码编写如何设置?
首先,删除 Storyboard
点击项目名, General - Deployment Info - Main Interface 中删除 Main
Info.plist 中 Application Scene Manifest 中 删除 Storyboard 的 key
Xcode 会生成 AppDelegate 和 SceneDelegate 两个委托文件,
AppDelegate 的 didFinishLaunchingWithOptions 中加入:
1 | window?.makeKeyAndVisible() |
SceneDelegate 的 willConnectTo 中加入:
1 | guard let windowScene = (scene as? UIWindowScene) else { return } |
1 | Command + R |