首页 > 解决方案 > 如何再次调用 LiveData

问题描述

我有一个用于从服务器获取数据的 LiveData,这个 LiveData 可能会收到一些时间错误响应,所以我需要再次获取数据。我可以再次通知刷新服务器请求的数据资源吗?

val movies : LiveData<Result<Movies>>? by lazy {
        model.getMovies()
}

标签: androidmvvmviewmodelandroid-livedata

解决方案


您可以使用 MutableLiveData 来实现这一点。例如,您可以执行以下操作:


val movies: MutableLiveData<Result<Movies>>? by lazy {
    model.getMovies()
}

fun retryGetMovies() {
    val response = model.getMovies()
    movies.postValue(response)  
}

推荐阅读