首先在build.gradle(Module:app)的depedencies中加入引用代码:
implementation 'androidx.lifecycle:lifecycle-viewmodel-savedstate:1.0.0-alpha01'
然后在自己的ViewModel类中加入变量声明和构造器
private SavedStateHandle handle;//声明变量handle
private final static String KEY;//声明KEY常量
//生成构造器
public MyViewModel(SavedStateHandle handle){
this.handle=handle;
}
创建get方法获取数据
public MutableLiveData<Integer> getNumber(){
if(!handle.contains(KEY)){
handle.set(KEY,0);
}
return handle.getLiveData(KEY);
}
使用和修改数据直接调用这个方法操作就可以
getNumber.getValue();//获取数据
getNumber.setValue();//设置数据
最后还在在MainActivity.java中初始化ViewModel时加入new SavedStateVMFactory(this)参数
myViewModel=ViewModelProviders.of(this,new SavedStateVMFactory(this)).get(MyViewModel.class);
« SharedPreferences数据永久保存接口
|
dataBinding的使用»
|