1

我是 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)


    }
4

1 回答 1

3

感谢 RxSwift Slack Group,

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

但是,如果您知道其他模式,请分享您的意见。

于 2018-04-25T12:17:33.407 回答