如何在SwiftUI中观察属性值。我知道一些基本的发布者和观察者模式。但是这里有一个我无法实现的场景。
class ScanedDevice: NSObject, Identifiable {
//some variables
var CurrentStatusText: String = "Pending"
}
这里,CurrentStatusText由其他一些更新状态的回调方法更改。
这里有我正在使用的ViewModel类
class SampleViewModel: ObservableObject{
@Published var devicesToUpdated : [ScanedDevice] = []
}
雨燕成分:
struct ReviewView: View {
@ObservedObject var viewmodel:SampleViewModel
var body: some View {
ForEach(viewmode.devicesToUpdated){ device in
Text(device.CurrentStatusText)
}
}
}
在UI中,我想查看实时状态
我尝试在ScanDevice类中使用Publisher,但肯定可以在2层中使用它
1条答案
按热度按时间agxfikkp1#
您可以观察您的
class ScanedDevice
,但是您需要手动使用objectWillChange.send()
来操作可观察到的更改,如本示例代码所示。