在SwiftUI中,@ObservedObject是用来观察外部对象状态的。以下是一个简单的代码演示:
首先,定义一个可观察对象:
class MyModel: ObservableObject {
@Published var count = 0
}
然后,在视图中使用该对象:
struct ContentView: View {
@ObservedObject var model = MyModel()
var body: some View {
VStack {
Text("\(model.count)")
Button("Increment") {
self.model.count += 1
}
}
}
}
在这个示例中,我们创建了一个名为MyModel的可观察对象,然后使用@ObservedObject装饰器在ContentView中定义了一个模型对象。随后,我们在按钮事件中增加了模型的计数器,并在Text视图中展示了当前计数器的值。此时,每一次model.count的值修改都会直接反映到UI界面中。
这样,我们就可以通过@ObservedObject来轻松地利用SwiftUI来管理外部对象状态了。