RxSwift" tableView.rx.modelSelected"叫多次

时间:2018-04-25 11:44:08

标签: swift xcode uitableview rx-swift rx-cocoa

我是RxSwift的新手,我正在尝试用它实现UITableView。 我用rx.items成功实现了UITableView单元格,现在我需要使用didSelect方法。

我的问题是;我的第一个单元格选择,它只调用一次,我打印项目。但是在第一次选择 tableView.rx.modelSelected 多次调用之后。

它是什么原因?我怎么能阻止这个?

感谢。

 func showContactListView() {
        UIView.transition(with: self.view, duration: 0.5, options: UIViewAnimationOptions.curveEaseIn,
                          animations: {self.view.addSubview(self.contactSelectionView)}, completion: nil)

       self.selectEmployeeFromList()
    }

    func selectEmployeeFromList() {

        self.contactSelectionView.tableView.rx.modelSelected(Employee.self)
            .subscribe(onNext: { item in

                print(item)
                self.contactSelectionView.removeFromSuperview()



            }).disposed(by: self.disposeBag)


    }

1 个答案:

答案 0 :(得分:1)

感谢RxSwift Slack Group,

我每次都在调用 showContactListView 函数。相反,我需要在其他地方(即在viewDidLoad或某些配置方法中)订阅它。就是这样。

但如果您了解其他模式,请分享您的意见。