ViewModel 是 Android Jetpack 组成的一部分,它用于在配置更改(如屏幕旋转)发生时保存和恢复 UI 相关数据。下面是一些关于 ViewModel 的关键点:

  • 作用:ViewModel 提供了一个存储 UI 状态的地方,使得即使在配置更改后,数据也不会丢失。
  • 生命周期:ViewModel 的生命周期比 Activity 或 Fragment 更长,因此可以跨配置更改保持数据。
  • 使用场景:适用于需要跨配置更改保持 UI 状态的场景,如列表数据、用户输入等。

ViewModel 的优势

  • 简化 UI 状态管理:通过 ViewModel,你可以将 UI 状态与业务逻辑分离,使代码更加清晰。
  • 提高性能:ViewModel 可以在后台线程上执行操作,避免在主线程上进行耗时操作,从而提高应用性能。

如何使用 ViewModel

  1. 创建 ViewModel:首先,你需要创建一个 ViewModel 类,并在其中定义你的数据和方法。
  2. 在 Activity 或 Fragment 中使用 ViewModel:通过 ViewModelProvider 获取 ViewModel 实例,并将其注入到你的 Activity 或 Fragment 中。
  3. 观察 ViewModel 的数据变化:使用 LiveData 或 Flow 来观察 ViewModel 的数据变化,并在 UI 中更新。

扩展阅读

想要了解更多关于 ViewModel 的信息,可以阅读以下文章:


Android_Jetpack_ViewModel