Jetpack: ViewModle + SharedPreferences实现保存数据的简单思路

1.ViewModle生命周期贯穿整个activity,使用SavedStateHandle类来临时保存数据,保证数据不被旋转屏幕等ondestroy()操作摧毁

2.SharedPreferences将简单的数据以xml文件形式保存在本地,并提供了基本的读写操作
因此使用ViewModle + SharedPreferences的流程如下:

读:
用SharedPreferences的getXXX()读数据,获取的数据传入SavedStateHandle临时保存,view直接取SavedStateHandle临时数据即可

写:
使用SharedPreferences.Editor类,用.edit()方法保存SavedStateHandle中的临时数据到xml文件

附:带有SavedStateHandle的ViewModle实例化方法

xxxx = new ViewModelProvider(this,new SavedStateViewModelFactory(getApplication(),this)).get(xxxx.class);
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章