ios - ReactiveCocoa : why rac_textSignal doesn't work

标签 ios objective-c reactive-cocoa

为什么这不起作用:

[self.phoneTextField.rac_textSignal subscribeNext:^(NSString *text) {
    self.viewModel.textFieldText = text;
}];

虽然这很好用,即使点击清除按钮也是如此:

RAC(self.viewModel, textFieldText) = RACObserve(self.phoneTextField, text);

?

最佳答案

rac_textSignal 仅在 UIControlEventAllEditingEvents 触发时才会触发,并且清除时不会发生这种情况。这是两种情况的解决方法:

[[RACSignal 
  merge:@[self. phoneTextField.rac_textSignal, RACObserve(self.phoneTextField, text)]] 
  subscribeNext:^(NSString* text) {
      // do something here
  }];

BR,

关于ios - ReactiveCocoa : why rac_textSignal doesn't work,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44656178/

相关文章:

ios - 在执行下一个代码行之前等待任务结束

ios - 如何检测核心数据对象关系属性变化

ios - 使用Base SDK 6.1在iOS7外观上运行的Xcode 5

iphone - 从线程调用委托(delegate)方法

ios - 编写 CLLocationManagerDelegate 的最佳 Reactive-Cocoa 方法,它很少获取位置

ios - 无法过滤 RACSignal 事件

ios - 数组在错误的位置返回值

ios - 内置联系人应用程序使用哪些控件?

ios - 使用 block 下载图像,卡住 UI

ios - 如何用 ReactiveCocoa 完成这个