【发布时间】:2020-03-15 21:11:30
【问题描述】:
我一直在尝试通过使用 Storyboards 作为界面设计在 Xcode 11.2 上创建一个新应用来学习协调器模式。
我关注了 Paul Hudson 的 this video,但在需要将代码添加到 AppDelegate.swift 文件时,我在第 12 分钟卡住了。就像应用程序将启动一样,第一个视图控制器将显示但不会导航。
我应该更改什么,或者更好的是,我应该将当前代码移到哪里才能使其正常工作?
整个项目可以找到here.
简而言之,在 iOS 12 及之前的 AppDelegate 中的代码是这样的:
var coordinator: MainCoordinator?
var window: UIWindow?
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
let navController = UINavigationController()
coordinator = MainCoordinator(navigationController: navController)
coordinator?.start()
window = UIWindow(frame: UIScreen.main.bounds)
window?.rootViewController = navController
window?.makeKeyAndVisible()
return true
}
我看到现在window 在 SceneDelegate 中,但是将那里的所有内容移到 sceneDidConnect 方法没有帮助。
有人可以在这里启发我吗?
谢谢!
【问题讨论】:
标签: ios swift appdelegate coordinator-pattern