【发布时间】:2017-05-18 07:37:57
【问题描述】:
我尝试在我的代码中使用 RxSwift 并有一个问题:
-
我有一个具有不同属性的
Settings类(例如staticValue):class DeviceSettings: NSObject { var staticValue = Variable<Int>(0) } -
我有一个带有 UITextField 的 UI,它应该与属性双向连接,效果很好:
settings.staticValue.asObservable() .map({ String($0) }) .bindTo(staticValueField.rx.text) .addDisposableTo(disposeBag) staticValueField.rx.controlEvent([.editingDidEnd]).asObservable() .map({ Int(self.staticValueField.text!)! }) // Always Int .subscribe(onNext: { self.settings.staticValue.value = $0 }).addDisposableTo(disposeBag)
但实际的Settings 对象将通过网络请求加载,并且可以在 VC 生命周期内多次重新加载。
所以:
- 我应该如何存储我的设置对象?像往常一样变量或
Variable<Settings>与?或!? - 我的双向绑定正确吗?
- 我需要按什么顺序加载数据并调用绑定逻辑来启用绑定并立即设置起始值?
【问题讨论】:
标签: ios swift binding rx-swift