【发布时间】:2019-05-21 05:19:48
【问题描述】:
如果您选择带有设置的模板在 Androdi Studio 3.4 中创建项目,您将看到带有SettingsActivity 扩展AppCompatPreferenceActivity 扩展PreferenceActivity 扩展ListActivity 扩展android.app.Activity 的示例应用程序,但不是FragmentActivity,这是通过
SettingsActivity创建ViewModel所必需的
SettingsViewModel viewModel
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
viewModel = ViewModelProviders.of(this, viewModelFactory).get(SettingsViewModel.class);
}
因为ViewModelProviders.of() 可能只接受FragmentActivity 作为第一个参数。
是否可以为AppCompatPreferenceActivity 创建一个ViewModel 或者它是具有谷歌偏好的下一个地狱转世?!
【问题讨论】:
标签: android android-preferences android-viewmodel android-mvvm viewmodelproviders