LiveData не обновляет свое значение при втором вызове APIAndroid

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 LiveData не обновляет свое значение при втором вызове API

Сообщение Anonymous »

Я получаю курс обмена валюты с помощью вызова API, используя концепцию модификации и ViewModel. При запуске приложения я могу получить последние данные с сервера, но когда я пытаюсь обновить текущие данные, нажав кнопку, Live Data значение не обновляется, я получаю те же старые данные. Кто-нибудь может помочь мне, как обновить данные в реальном времени при нажатии кнопки.
ViewModel Class*****
класс MainViewModel (частный репозиторий val: CurrencyRepository) : ViewModel() {
init {
viewModelScope.launch() {
repository.getCurrencyExchangeList()
}
}

val quotes: LiveData
get() = repository.currencyLiveData


Класс репозитория*****
class CurrencyRepository(private valcurrencyService: CurrencyInterface) {
val currencyLiveData = MutableLiveData()

suspend fun getCurrencyExchangeList() {
val result = currencyService.getAllCurrencyData()
if (result.body() != null) {
//currencyLiveData.postValue(result.body())
currencyLiveData.value = result.body()
}
}

}
Метод (в MainActivity) для получения и обновления списка валют *****
личное развлечение fetchCurrencyRates() {
val currencyService = RetrofitHelper.getInstance().create(CurrencyInterface::class.java)
val repository = CurrencyRepository(currencyService)
val mainViewModel =
ViewModelProvider(this, MainViewModelFactory(repository))[MainViewModel::class.java]
mainViewModel.quotes.observe(this, Observer {
Log.d("AllCurrencyList", it.updated)

})

}


Подробнее здесь: https://stackoverflow.com/questions/787 ... d-api-call
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Android»