RxJava PublishSubject не выполняется в следующем
Кто-нибудь может указать мне правильное направление, пожалуйста? У меня есть RecyclerView, который содержит ViewPager, который имеет 2 фрагмента. Таким образом, иерархия представлений выглядит примерно так:
Activity
-------RecyclerView
------------------Adapter ↖
------------------------ViewPager ↖
---------------------------------Fragment1 (Radio Buttons) , Fragment2 (Num Picker)
Я пытаюсь получить щелчок на каждой радиокнопке (Enum Long Value), поэтому я изменяю Room DB внутри адаптера.
Gif варианта использования:
Это мой код Open Fragment1:
private val publishSubject: PublishSubject<Long> = PublishSubject.create()
open val publishObservable: Observable<Long> = publishSubject
RadioButton.onClick { _ ->
publishSubject.onNext(WINNER.AWAY.value)
println("Fragment 1 = ${WINNER.AWAY.value}") // <-- This prints on Click
}
enum class WINNER(val value: Long) {
LOCAL(1),
DRAW(2),
AWAY(3)
}
В адаптере:
val fragment1 = Fragment1()
mDisposable.add(fragment1.publishObservable
.subscribeOn(Schedulers.io())
.subscribe { println("Adapter = $it") }) // <-- This doesnt println
Я пытался использовать комплекты, общие настройки, интерфейсы и даже другие горизонтальные RecyclerView (этот я не уверен, как использовать с фиксированным представлением), но я знаю, что RV мудрости производительности лучше.