RxSwift События UITextView - PullRequest
       6

RxSwift События UITextView

0 голосов
/ 18 сентября 2018

Когда я реализую UITextFieldDelegate через RxSwift, я делаю это:

self.textField_AddressType.rx.controlEvent(.editingDidBegin).subscribe { _ in
    // Code here...
}.disposed(by: self.disposeBag)

Но когда я применяю его к UITextView,

self.textView.rx.controlEvent(.editingDidBegin).subscribe { _ in
   // Code here...
}.disposed(by: self.disposeBag)

, я получаю ошибку:

'UITextView' не является подтипом 'UIControl'

Я не мог найти что-либо об этой проблеме, есть ли другой способ реализовать UITextViewDelegate в RxSwift?

Ответы [ 2 ]

0 голосов
/ 25 декабря 2018

Вы можете отобразить событие и создать наблюдаемую строку, подобную этой

self.tfUserName.rx.controlEvent(UIControlEvents.editingDidEnd)
        .map { self.tfUserName.text }
        .filter { $0 != nil }
        .map { $0! }
        .subscribe(onNext: { (text) in
            // Code here...
        }).disposed(by: self.disposeBag)
0 голосов
/ 18 сентября 2018
textView.rx.didBeginEditing.subscribe(onNext: { n in
  value = n
}, onCompleted: {
  completed = true
})

Вы можете попробовать это.

...