RxSwift无法识别按钮点击事件

时间:2019-01-20 20:41:32

标签: ios swift event-handling rx-swift reactive-swift

我有一个带有3个按钮的UIViewController子类。单击“继续”按钮3次后,我从导航堆栈中弹出该视图控制器,并推送了同一类的另一个实例。但是,当我推送这个新的视图控制器对象时,我没有收到rx.tap事件。在将.debug()放在这些订阅上并将print(#function)放在我的视图控制器的deinit()上之后,我得到以下日志:

Log

我似乎程序无法将按钮与我的视图控制器的两个实例区分开,因此在它们被处置之前第二次订阅。

有人可以帮助我解决此问题吗? 预先感谢。

编辑:

这是我订阅按钮水龙头的方式:

self.backButton.rx.tap
            .debug("back button")
            .bind(to: self.viewModel.backButtonPressed)
            .disposed(by: self.disposeBag)

1 个答案:

答案 0 :(得分:0)

继续中的completed事件很可能会关闭订阅的所有内容,因此当第二个继续按钮订阅该事件时,该事件中的下一个事件将被忽略。