当我在 作用域 为 Activity 的 共享 ViewModel 中设置了一个 LiveData,
FragmentA observe 这个 LiveData,那么在收到一次通知、并关闭 FragmentA 后,再进入 FragmentA,
由于 该 ViewModel 是共享的,其中的 LiveData 并没有随着 FragmentA 的退出而清除,那么再次进入后,会自动走一遍 observe 回调,倒灌旧数据。
我知道这么设计的缘由是为了处理生命周期从 unActive 到 active 转变时,跟进“最新” 的状态,但在共享 ViewModel 中,这算不算是一个 bug ?因为 LiveData 封装死了,我似乎没有其他办法来干预这种现象的发生。
看看万能的 V 友有没什么好招
FragmentA observe 这个 LiveData,那么在收到一次通知、并关闭 FragmentA 后,再进入 FragmentA,
由于 该 ViewModel 是共享的,其中的 LiveData 并没有随着 FragmentA 的退出而清除,那么再次进入后,会自动走一遍 observe 回调,倒灌旧数据。
我知道这么设计的缘由是为了处理生命周期从 unActive 到 active 转变时,跟进“最新” 的状态,但在共享 ViewModel 中,这算不算是一个 bug ?因为 LiveData 封装死了,我似乎没有其他办法来干预这种现象的发生。
看看万能的 V 友有没什么好招