【发布时间】:2020-10-15 03:52:49
【问题描述】:
我目前正在使用 SceneDelegate 和 AppDelegate 开发 SwiftUI 应用程序。我想知道如何将生命周期从UIKit 转换为SwiftUI 一个有App 结构和scenes 等的。
我还想知道如何满足 CoreData 和 PersistentContainers 并将它们注入我们的环境。
我也使用UIApplicationDelegateAdapter 注入AppDelegate 但@main 给了我错误
'main()' 仅适用于 iOS 14.0 或更新版本
我在开头使用@available (iOS 14.0, *):
import SwiftUI
@available(iOS 14.0, *)
@main
struct MyApp: App {
@UIApplicationDelegateAdaptor(AppDelegate.self) var appDelegate
let context = (UIApplication.shared.delegate as! AppDelegate).persistentContainer.viewContext
var body: some Scene {
WindowGroup {
ContentView()
}
}
}
这样操作,SceneDelegate 代码去哪了。我仍然很困惑这种转换是如何进行的。我还没有看到苹果在他们的会议上谈论这个或任何事情。非常感谢您的帮助。
【问题讨论】:
-
我认为您必须将部署目标设置为 iOS 14,如果您想很快发布应用程序,您可能不想这样做。
标签: ios swiftui appdelegate xcode12