在 SwiftUI 2.0 中添加 EnvironmentObject

Dei*_*sch 0 swift swiftui

由于 SwiftUI 2.0 不再有 AppDelegate 和 SceneDelegate,EnvironmentObjects 应该在哪里设置?

这是以前如何完成的,我现在必须在哪里添加它们?

window.rootViewController = UIHostingController(rootView: ContentView()
                             .environmentObject(settings))
Run Code Online (Sandbox Code Playgroud)

paw*_*222 5

请尝试以下操作:

@main
struct TestApp: App {
    @StateObject var settings: Settings = ... // init here

    var body: some Scene {
        WindowGroup {
            ContentView()
                .environmentObject(settings)
        }
    }
}
Run Code Online (Sandbox Code Playgroud)