【发布时间】:2021-02-26 21:39:17
【问题描述】:
我有一个 Singleton 类,我希望它反映它对任何视图的更改。
如何从视图中调用类以便能够观察更改?正确的方法是什么?
exampleView.Swift
struct exampleView: View {
var status: Bool = PerixViewModel.shared.isAccepted
var body: some View {
Text("\(status)")
}
}
单例类;
class PerixViewModel: NSObject, ObservableObject {
static let shared = PerixViewModel()
@Published var isAccepted: Bool = false
}
【问题讨论】:
-
您的属性已发布,因此您可以在 SwiftUI 中将其标记为
@ObservedObject,或者您可以订阅在 SwiftUI 之外为isAccepted公开的发布者。