Observer和LifecycleObserver有什么区别?

时间:2018-06-02 19:13:33

标签: android android-lifecycle android-architecture-components android-livedata android-architecture-lifecycle

我很难理解LiveData LifecycleObserverObserver对象在LiveData方法中收到的observe()之间的区别。

我是否正确地说LiveDataLifecycleObserver,因此它知道Activity因为它。

它在Observer方法中收到的observe()LifecycleObserver无关,因为它只是在发生更改时执行onChange()方法在LiveData

1 个答案:

答案 0 :(得分:0)

  

我是不是说LiveDataLifecycleObserver,因此知道Activity是因为它吗?

是的

  

Observer方法中收到的observe()LifecycleObserver无关,因为它只是在发生变化时才执行onChange()方法LiveData

是的


顾名思义,LifecycleObserver应该跟踪其父级(ActivityFragment或任何其他LifecycleOwner)生命周期中发生的变化,使LiveData具有生命周期意识。

另一方面,Observer跟踪此value对象的LiveData发生的更改。

所以你是对的。 ObserverLifecycleObserver无关。