ios - RxSwift 无法识别按钮点击事件
问题描述
我有一个UIViewController
带有 3 个按钮的子类。点击“继续”按钮 3 次后,我从导航堆栈中弹出此视图控制器并推送同一类的另一个实例。但是,当我推送了这个新的视图控制器对象时,我没有收到rx.tap
事件。在添加.debug()
这些订阅和我print(#function)
的deinit()
视图控制器之后,我得到以下日志:
我似乎程序无法将按钮与我的视图控制器的两个实例区分开来,因此在它们被处理之前第二次订阅。
有人可以帮我解决这个问题吗?提前致谢。
编辑:
以下是我订阅按钮点击的方式:
self.backButton.rx.tap
.debug("back button")
.bind(to: self.viewModel.backButtonPressed)
.disposed(by: self.disposeBag)
解决方案
来自 continue的事件很可能completed
正在关闭订阅它的任何内容,因此当第二个 continue 按钮订阅它时,来自它的下一个事件将被忽略。
推荐阅读
- pandas - Pandas - 按列过滤值会引发错误(ValueError:传递的项目数量错误 3,位置意味着 1)
- typescript - 打字稿如何测试两个泛型是否等效?
- python-3.x - 如何在 Tensorflow 中保存多层感知器模型
- javascript - Ember.js 测试页面自动刷新
- c++ - 为什么 C++ std::string 可以支持日文、法文字符?
- ios - 找不到设备支持文件:iOS
- android - 将 recyclerView 在其位置旋转到 90 度
- javascript - 检查酶中的后备关键测试
- scala - Spark scala 使用地图和过滤器读取文本文件
- mysql - 如何在 Ubuntu 16.04 中启动 MySql 服务时在 MySQL 的固定数据库中运行 MySQL 查询?