Согласно Документация LiveData:
Класс LiveData предоставляет следующие преимущества:
...
Всегда обновляемые данные: Если жизненный цикл снова запускается (например, операция возвращается к запущенному состоянию из заднего стека), он получает последние данные о местоположении (если он еще не был).
Но иногда мне не нужна эта функция.
Например, я вижу LiveData в ViewModel и Observer в действии:
//LiveData
val showDialogLiveData = MutableLiveData<String>()
//Activity
viewModel.showMessageLiveData.observe(this, android.arch.lifecycle.Observer { message ->
AlertDialog.Builder(this)
.setMessage(message)
.setPositiveButton("OK") { _, _ -> }
.show()
})
Теперь после каждого поворота появится старое диалоговое окно.
Есть ли способ очистить сохраненное значение после его обработки или это неправильное использование LiveData?