【发布时间】:2016-04-05 08:37:18
【问题描述】:
我正在尝试使用 PublishSubject 转发按钮点击。然而,这个 PublishSubject 会在初始化时触发,这会干扰我的逻辑。这就是我正在做的:
var buttonClick = PublishSubject<Void>()
(此初始化行将触发第一个 Next 事件)
然后在按钮点击动作上:
@IBAction func buttonClicked(sender: AnyObject) {
buttonClick.onNext()
}
然后我像这样订阅它:
buttonClick
.asDriver(onErrorJustReturn: ())
.driveNext { () in
}.addDisposableTo(disposeBag)
有没有什么方法可以在不触发初始化时发布的第一个“Next”事件的情况下做到这一点?
干杯!
【问题讨论】:
-
可以简单的使用
rx_tap按钮的方法吗? -
@MichałCiuba 这是一个更好的解决方案,是的!谢谢。但是,它仍然会触发第一个意外的 Next 事件。这就是我现在拥有的:
emptyStateView.button.rx_tap .asDriver(onErrorJustReturn: ()) .driveNext { () in }.addDisposableTo(disposeBag)