我想观察UITextField.text使用RxSwift 对属性进行的任何更改。
我尝试使用rx.text属性,但仅当我设置如下text属性时才调用该属性:textField.text = "",但在键入文本时不起作用。
我也尝试使用rx.observe(String.self, "text"),但是它给出了相同的结果。
如何观察UITextField中文本的任何变化?
小智 5
要观察文本的任何变化,UITextField您可以创建Reactive类的扩展名:
public extension Reactive where Base: UITextField {
public var textChange: Observable<String?> {
return Observable.merge(self.base.rx.observe(String.self, "text"),
self.base.rx.controlEvent(.editingChanged).withLatestFrom(self.base.rx.text))
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
859 次 |
| 最近记录: |