我按照下一页中的说明创建了一个 viewModel,但是SavedStateHandle
当我关闭应用程序并再次打开它时它不起作用。
这是页面:
这是我的视图模型类:
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
仍然是空的。