【发布时间】:2021-10-09 10:08:18
【问题描述】:
我按照以下页面中的说明创建了一个 viewModel,但是当我关闭应用并再次打开它时,SavedStateHandle 不起作用。
这是页面:
Saved State module for ViewModel
这是我的视图模型类:
class UserViewModel(private val state : SavedStateHandle) : ViewModel(){
val userId: LiveData<String> by lazy {
state.getLiveData("userId")
}
fun setUserId(userId : String) {
state["userId"] = userId
}
val user : User by lazy {
User("")
} }
这是我在活动中使用 viewModel 的方式。
val userViewModel : UserViewModel by viewModels()
我什至在我的活动中尝试过这个,但这也不起作用!
val userViewModel: UserViewModel by viewModels {
SavedStateViewModelFactory(
application,
this
)
我应该怎么做才能将数据保存在SavedStateHandle 中?我的意思是,打开应用后state还是空的。
【问题讨论】:
标签: android-viewmodel android-savedstate viewmodel-savedstate