点击后,UxableViewCell内的Rxswift隐藏按钮

时间:2018-03-20 13:01:15

标签: swift rx-swift

我在UITableCieCwell中有一个addButton。我希望addButton在用户点击后消失,所以我创建了一个Action并将其绑定到addButton。

然而,尽管我只是运行我的应用程序,但所有addButton都消失了。

我是RxSwift的新手,请帮帮我。

绑定用户界面

joins

视图模型

viewModel.courses
        .asObservable()
        .bind(to: collectionView.rx.items(cellIdentifier: AddableCourseCell.reuseIdentifier, cellType: AddableCourseCell.self)) { (row, element, cell) in

            let action = self.viewModel.actions.value[row]
            action.enabled.asObservable()
                .bind(to: cell.addButton.rx.isHidden)
                .disposed(by: self.disposeBag)

            cell.addButton.rx
                .tap
                .debounce(0.3, scheduler: MainScheduler.instance)
                .subscribe({ (event) in

                    action.execute(element)

                }).disposed(by: cell.disposeBag)

        }.disposed(by: disposeBag)

1 个答案:

答案 0 :(得分:0)

我可以给你的一个提示是在.debug() observable中添加action,这样你就可以看到发出的值了。但是,我认为导致您遇到麻烦的是action可观察量的初始值为true,该值与isHidden

addButton属性有关