Android ViewModel 是一个设计模式,用于管理和保存与 UI 相关的数据。它的主要目的是在配置更改(如旋转屏幕)或应用程序进入后台并重新启动时保持数据的一致性。
要使用 Android ViewModel,您需要遵循以下步骤:
- 添加 ViewModel 支持库依赖项到您的模块级 build.gradle 文件中:
implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1'
- 创建一个继承 ViewModel 的类,该类将保存您的 UI 相关数据。例如:
import androidx.lifecycle.ViewModel class MyViewModel : ViewModel() { // 保存您的 UI 相关数据的成员变量 }
- 在您的 Activity 或 Fragment 中获取 ViewModel 的实例:
import androidx.lifecycle.ViewModelProvider val viewModel = ViewModelProvider(this).get(MyViewModel::class.java)
在这里,this
是您的 Activity 或 Fragment 实例,MyViewModel
是您创建的 ViewModel 类。
- 现在,您可以在您的 UI 组件中使用 ViewModel 中的数据。例如,在 Activity 中,您可以使用以下方式设置文本视图的文本:
textView.text = viewModel.myData
在这里,myData
是 MyViewModel 中的一个成员变量。
- 当您的 Activity 或 Fragment 销毁时,ViewModel 的实例仍然存在,以便在下一次创建时恢复数据。
请注意,您可以在 ViewModel 中使用 LiveData 来观察和响应数据的更改。这样,您的 UI 组件可以根据数据的更新自动更新。有关 LiveData 的更多信息,请参阅LiveData 文档。
这就是使用 Android ViewModel 的基本步骤。您可以根据您的需求进一步定制和扩展 ViewModel。