问题描述
我有 2 个活动 A 和 B。它们都侦听位于这 2 个活动之外的全局范围的 Livedata。当我从活动 A 导航到活动 B 时,这些是报告的生命周期事件。
-
A -> 暂停
-
B -> 已创建
-
B -> 开始
-
B -> 已恢复
-
A -> 停止
我的问题是,在前 4 个步骤中的任何一个步骤中改变 LiveData 都会导致活动 A 仍然收到 LiveData 回调,即使用户已经在活动 B 上。
当 onPause 被调用时,我可以移除 Activity A 中的观察者,但我认为 LiveDatas 的整个想法是我不必移除观察者。
问题:一旦用户离开活动,我有哪些选择不接收活动 A 中的回调?
活动 A
override fun onCreate(savedInstanceState: Bundle?) {
Global.liveData.observe(this,Observer {
doUiWork()
})
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)