LiveData не обновляется после изменения с помощью Handler PostDelayed? - PullRequest
0 голосов
/ 03 октября 2019

Вот мой ViewModel

class MainViewModel(repository: MainActivityRepo) : ViewModel() {

val isLoading: MutableLiveData<Boolean> = MutableLiveData()

init {
    isLoading.value = false
    android.os.Handler().postDelayed({
        isLoading.value = true
        Timber.d("isCalled")
    }, 5000L)
     }
}

Я отладил и проверил, и журнал работает отлично.

Первое значение логического значения установлено правильно, а второе не

Ответы [ 2 ]

1 голос
/ 03 октября 2019

Как уже упоминал Викас, вы должны использовать метод postValue () .

Handler().postDelayed({
    isLoading.postValue(true)
    Timber.d("isCalled")
}, 5000L)
1 голос
/ 03 октября 2019

В фоновом потоке вы можете использовать значение post вместо установленного значения, что решит вашу проблему!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...