【发布时间】:2023-02-23 07:14:55
【问题描述】:
我是 RxSwift 的新手。 我在屏幕上有 3 个 UIControl。选择一个或所有控件应启用屏幕底部的“下一步”UIButton。
我不明白如何:
- 如何根据 UIControl 的 isSelected 属性创建点击序列?
- 如何在选择这些按钮后更新可观察模型?鉴于模型是不可变的。
- 如何正确存储/保存选定的值?
我的模型:
struct Model { let isFirstButtonSelected: Bool let isSecondButtonSelected: Bool let isThirdButtonSelected: Bool } let model: Observable<Model>我的视图配置如下:
func configure(_ model: Model) { firstButton.isSelected = model.isFirstButtonSelected secondButton.isSelected = model.isSecondButtonSelected thirdButton.isSelected = model.isThirdButtonSelected }
【问题讨论】:
-
按钮的
rx.isSelected属性是一个 Binder,它是一种 Observer。你无法观察观察者;你只能观察一个可观察的。因此,您的代码中的某些内容导致按钮被选中。那是什么?
标签: rx-swift