android - EventBus注销是在传值的页面注销还是接收值的页面注销?
怪我咯
怪我咯 2017-04-18 09:18:04
0
3
848

很久没有用了 发现 不知道在哪个页面注销了

怪我咯
怪我咯

走同样的路,发现不同的人生

全部回覆(3)
Peter_Zhu
  1. 官方DEMO是在onResume()注册和onPause()反註冊. 但是這種機制, 可能不適應大部分的需求場景.

  2. 如果考慮在onCreate(...)注册和onDestroy()反註冊, 那有一種情況就需要注意了:

如果一個Activity創建了多個實例時, 而EventBus.post(Event)出來的Event本應該只由頂層Activity實例接收, 那麼這是就會出問題.

洪涛

在OnCreat裡面註冊,註冊前先判斷註冊過沒。重複註冊會報錯誤。

在Destory裡面反註冊。去過在onPause裡面反註冊,頁面不可見時,發出的刷新廣播或其他廣播,接收不到的。頂層Activity中接收實例之後,你在View中直接寫OnEvent也是可以回應的,所以註冊之前先判斷有沒有註冊過。裡面要用this就行,不用Context。

Peter_Zhu

誰註冊誰註銷,register和unregister在同一個類別裡面最科學

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板