LiveData 是一个非常有用的组件,用于在数据变化时通知观察者。LiveData 提供了两种主要的观察方法:observe 和 observeForever。这两种方法在使用场景、生命周期感知以及内存管理等方面有所不同。
一、observe 方法
1. 基本介绍
- 生命周期感知:
observe方法是生命周期感知的,这意味着它只在观察者(通常是Activity或Fragment)处于活跃状态(如STARTED或RESUMED)时才会接收数据更新。 - 自动管理:当观察者所在的生命周期组件被销毁时,
LiveData会自动移除观察者,避免内存泄漏。
2. 使用方法
liveData.observe(viewLifecycleOwner, Observer { data ->// 更新UI
})