2017-10-24 16 views
0

最初はすごく混乱していますが、実際には何か改善ができません。UITableViewCellでRxSwiftの世界でUIButtonを使用

は、私はすべてのすべてで、私はコーディネーターに、すべてのナビゲーション関連のものを渡すために、WAN、コーディネーターパターンとRxSwiftを使用してアプリケーションを持っているので、ナビゲーション・ロジックを処理することができます。
私はUITableViewの中にUIButtonを持っているセルを持っています。そのような場合のために私が持っている:

actionButton.rx.tap.bind(to: viewModel.chapterAction).disposed(by: disposeBag) 

chapterActionは、それが唯一のボタンタップを反映しているようPublishSubject<Void>ですが、私はコーディネーターに詳細情報を渡す必要があるので、後で私はこのchapterAction変換:

var showChapter: Observable<Chapter> = self.chapterAction.mapTo(self.chapter) 

そして私は私が持っているビューコントローラの.bind(to: tableView.rx.items...におけるのでここまでにこのコードは何も問題は、ありませんことをを想定

viewModel.showChapter.bind(to: self.viewModel.chapterAction).disposed(by: viewModel.disposeBag) 

コーディネーターのビューコントローラーviewModel以降、subscribeにバインドしたいので
すべて正常に動作しますが、一部のセルではが重複していますタップは、なぜですか?私はdistinctUntilshareReplyを入れてみましたが、何も私の問題を助けると思われませんし、それは決定的なものではありません。 、

override func prepareForReuse() { 
    super.prepareForReuse() 
    disposeBag = DisposeBag() 
} 

その後:

答えて