Observing UI Events with RxJava
So far, we have been using RxJava
to process and manipulate data streams, which simplified the development of asynchronous that require IO blocking operations that will hang the application for a while.
In this section, we want to explain how to use RxJava
and reactive streams to simplify the handling of UI events generated from Android Widgets.
In our next example, we will present a list of Soccer Teams with an instant search result input field. As you type in the input field, the names available in the list will be filtered if the text that you typed matches the beginning of any soccer team on the list.
To achieve the result required, we will create a custom Observable
that attaches a TextWatcher
to the searching input field, listens for onTextChanged
events, and emits a String event when the text changes.
The Observer will feed a reactive functional stream that will filter our list of teams in a Recycler View.
First, we will write a Custom Observable that registers...