Skip to content

Instantly share code, notes, and snippets.

@chao2zhang
Created October 27, 2019 19:45
Show Gist options
  • Save chao2zhang/89569ca02aa43c8dc18f8e8129514b20 to your computer and use it in GitHub Desktop.
Save chao2zhang/89569ca02aa43c8dc18f8e8129514b20 to your computer and use it in GitHub Desktop.
ObserveUntilFinished example
fun <T> observeUntilFinished(liveData: LiveData<T>, observer: Observer<T>? = null) {
liveData.observeForever(object : Observer<T> {
override fun onChanged(resource: Resource<T>?) {
observer?.onChanged(resource)
liveData.removeObserver(this) // SAM conversion is not applicable because of `this`
}
})
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment