1. 程式人生 > >android EventBus 3.0

android EventBus 3.0

專案地址: github 地址
eventBus能做什麼?為我們解決什麼問題?
1.通訊,各元件資訊的傳遞,而且是在任何時候,資訊內容可以是簡單的標識,也可以是json資料,等;
2.專案中總有兩個元件藕斷絲連,甚至完全不搭邊;但是從業務邏輯上,介面顯示上做同步處理;
這個時候 eventBus 出場了;使用其他方法程式碼臃腫,可讀性差的自己都不想看;而eventBus幾行程式碼幫我實現了這個事

匯入依賴
compile ‘org.greenrobot:eventbus:3.1.1’

第一步:寫一個bean類,這個bean就是資訊的載體
這裡寫圖片描述

第二步:釋出,傳送資料;
在一個點選事件裡傳送了一個"666";
這裡寫圖片描述


第三步:訂閱,
這裡就是注意;誰訂閱(誰要收到這個訊息)誰註冊和登出;
註冊
登出
第四步:接收這個"666"
需要這個Subscribe註解 就是宣告這個方法是接收資訊的方法,把資訊發到這裡來吧
threadMode 可以指定執行緒模型,我這裡直接顯示出來就是主執行緒,如果拿到這個資訊去請求就子執行緒
官網執行緒模型詳細介紹

這裡寫圖片描述

如果這個註解忘記新增會報錯;如下
這裡寫圖片描述

可以看出 eventBus 幫我們做了很多事情,為我們鋪設了一條電話線,你想打給誰就註冊誰.