繁体   English   中英

在Reactive Cocoa 4中点击UIButton获取信号

[英]Get Signal from tap on UIButton in Reactive Cocoa 4

如何通过点击UIButton创建Signal

到目前为止,我尝试使用目标/操作 ,但已经开始认为可能有一种更简单的方法。

Colin Eberhardt一篇文章中,声明Signals适用于UI操作。 但是当我尝试使用target / action时 ,我需要创建一个CocoaAction ,最终使用SignalProducer初始化。

我想要的是一些Signal ,它会在每个用户点击时发出next事件。 然后我想将此信号转换为从UITextFields读取并继续执行这些值以在我的应用程序中使用它们。

使用@NachoSoto的这个要点的便利函数,我能够通过signalForControlEvents(UIControlEvents.TouchUpInside)非常简单地实现这一点:

self.startButton
      .signalForControlEvents(UIControlEvents.TouchUpInside)
      .map { _ in (self.name1TextField.text!, self.name2TextField.text!)}
      .observe { event in
          if let names = event.value {
              print("received names \(names)")
          }
       }
 self.startButton
     .rac_signalForControlEvents(UIControlEvents.TouchUpInside)
     .subscribeNext { event in
         if let names = event.value {
            print("received names \(names)")
         }
     }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM