我正在尝试以与此问题类似的方式实施Apple Watch应用:Issues implementing navigation from a main controller to page based controllers in WatchOS using SwiftUI
我正在尝试在不同的HostingController
之间传递数据。我的数据存储在具有已发布属性的EnvironmentObject
中。如果仅使用一个HostingController
,则可以在不同视图之间共享数据。但是,当使用不同的HostingController
,托管不同的视图(没有顺序)时,我找不到从Environment
到HC1
,HC2
等使用HC3
对象的语法>
我在SwiftUI视图中使用这段代码来显示HostingController
。>
NavigationLink(destinationName: "HC2"){ Text("Go to HC2")
[我正在尝试以与该问题类似的方式来实现Apple Watch应用:我正在尝试使用SwiftUI在WatchOS中实现从主控制器到基于页面的控制器的导航问题...
class AppState: ObservableObject {
static let shared = AppState() // shared instance
@Published var setting: String = "some"
}
class HostingController: WKHostingController<AnyView> {
override var body: AnyView {
let contentView = ContentView()
.environmentObject(AppState.shared) // << inject !!
return AnyView(contentView)
}
}
class HostingController2: WKHostingController<AnyView> {
override var body: AnyView {
let contentView = ContentView2()
.environmentObject(AppState.shared) // << inject !!
return AnyView(contentView)
}
}