RxSwift 同じ機能のボタンをまとめる方法
はじめに
RxSwiftを勉強して数ヶ月が経ち、まだそこまで理解できていないけどアプリ制作に取り入れてます。
ボタンが複数あるアプリで、全てのボタンを一つのメソッドで受け取って処理したい場合
以下のようにするのが一番良さそう。
let observable = Observable.merge(Button1.rx.tap.map{ 0 }, Button2.rx.tap.map{ 1 }, Button3.rx.tap.map{ 2 }, Button4.rx.tap.map{ 3 }, Button5.rx.tap.map{ 4 }) observable.subscribe(onNext: {[weak self] id in self?.viewModel.pushButton(id) }).disposed(by:disposedBag)
参考
https://stackoverflow.com/questions/52757121/how-to-get-which-button-is-clicked-in-rxswift