我的viewmodel-savestate版本是implementation 'androidx.lifecycle:lifecycle-viewmodel-savedstate:1.0.0-alpha03'
在1.0.0-alpha01版本中,我可以使用
MyViewModel myVM = new ViewModelProvider(this, new SavedStateVMFactory(this)).get(MyVM.class);
要创建带有savestate的viewmodel,但在1.0.0-alpha03版本中,
SavedStateVMFactory
无法完成工作,我需要使用new SavedStateViewModelFactory
,但我不知道第二个参数是什么意思,代码如下所示:
myVM = new ViewModelProvider(this, new SavedStateViewModelFactory(getApplication(),xxxxxxx)).get(MyVM.class);
而且我在android开发者网站上找不到与此有关的任何文档,>
我的viewmodel-savestate版本是版本1.0.0-alpha01中的实现'androidx.lifecycle:lifecycle-viewmodel-savedstate:1.0.0-alpha03',我可以使用MyViewModel myVM = new ViewModelProvider(this,...
根据SavedStateRegistryOwner
documentation,SavedStateRegistryOwner
和Fragment
都实现AppCompatActivity
,因此您只需传递SavedStateRegistryOwner
: