Uczę się RxJavy i chciałem sobie spróbować prosty przykład na śledzenie zmiany mojego Inta.
Tutaj kod:
class MainActivity : AppCompatActivity() {
lateinit var button: Button
var counter: Int = 0
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val observable :Observable<Int> = Observable.just(counter)
button = findViewById(R.id.button)
button.setOnClickListener(View.OnClickListener {
counter++
})
observable.subscribe(
Consumer { t ->
Log.d("fromObservable", counter.toString()) }
)
}
}
Logowanie na konsole nie jest wywoływane przy każdym kliknięciu w Buttona, tak jak to miałem w zamyśle. Jak w takim razie mogę śledzić zmiany jakiejś zmiennej przez Observable w tym przykładzie i reagować na tą zmianę?