Android 消息分發(fā)使用EventBus的實(shí)例詳解
Android 消息分發(fā)使用EventBus的實(shí)例詳解
1. AndroidStudio使用
dependencies {
//最新版本
compile 'org.greenrobot:eventbus:3.0.0'
//可以翻倍提高EventBus使用效率
provided 'de.greenrobot:eventbus-annotation-processor:3.0.0-beta1'
}
2. 在基類Activity中配置
/**
* Activity基類
*/
protected EventBus eb;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//單例模式獲取到實(shí)例并注冊(cè)
eb = EventBus.getDefault();
eb.register(this);
}
@Override
protected void onDestroy() {
//反注冊(cè)
eb.unregister(this);
super.onDestroy();
}
//主線程
@Subscribe(threadMode = ThreadMode.MAIN)
public void onMainEvent(EventBean event) {
}
//主線程 粘性(比如傳遞intent使用)
@Subscribe(sticky = true, threadMode = ThreadMode.MAIN)
public void onMainStickEvent(EventBean event) {
}
//后臺(tái)
@Subscribe(threadMode = ThreadMode.BACKGROUND)
public void onBackgroundEvent(EventBean event) {
}
//重新開啟一個(gè)線程來執(zhí)行
@Subscribe(threadMode = ThreadMode.ASYNC)
public void onAsyncEvent(EventBean event) {
}
一般情況下,常用重寫onMainEvent ( ) 方法即可。
3. 創(chuàng)建自定義消息實(shí)體
//根據(jù)不同需求自定義
/**
* 自定義Event消息
*/
public class EventBean {
public int id;//類型標(biāo)識(shí)
public Object data;//數(shù)據(jù)對(duì)象
//省略constructor & getter & setter
}
4. 發(fā)送消息
繼承自基類Activity后: eb.post(new EventBean(1, "data")); //粘性 eb.postSticky(new EventBean(1, "data"));
5. 消息處理
根據(jù)數(shù)據(jù)處理的需求重寫基類的4個(gè)方法即可。
以上就是Android 消息分發(fā)使用EventBus的實(shí)例,如有疑問請(qǐng)留言或者到本站社區(qū)交流討論,本站關(guān)于Android的文章還有很多希望大家搜索查閱,謝謝大家對(duì)本站的支持!
相關(guān)文章
Android編程實(shí)現(xiàn)點(diǎn)擊EditText之外的控件隱藏軟鍵盤功能
這篇文章主要介紹了Android編程實(shí)現(xiàn)點(diǎn)擊EditText之外的控件隱藏軟鍵盤功能,涉及Android控件的功能、屬性及相關(guān)操作技巧,需要的朋友可以參考下2017-06-06
Android三種方式實(shí)現(xiàn)ProgressBar自定義圓形進(jìn)度條
這篇文章主要介紹了Android三種方式實(shí)現(xiàn)ProgressBar自定義圓形進(jìn)度條的相關(guān)資料,需要的朋友可以參考下2016-03-03
Android中常用的三個(gè)Dialog彈窗總結(jié)解析
自己雖然一直使用過dialog,但是一直都是復(fù)制、粘貼;不清楚dialog的具體用途,這次趁著有時(shí)間,總結(jié)一下具體用法,感興趣的朋友跟著小編來看看吧2021-10-10
Android 靜默方式實(shí)現(xiàn)批量安裝卸載應(yīng)用程序的深入分析
本篇文章是對(duì)Android 靜默方式實(shí)現(xiàn)批量安裝卸載應(yīng)用程序進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06
Android實(shí)現(xiàn)學(xué)生管理系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)學(xué)生管理系統(tǒng)的相關(guān)代碼,供大家學(xué)習(xí)借鑒,感興趣的小伙伴們可以參考一下2016-03-03
Android仿微信QQ聊天頂起輸入法不頂起標(biāo)題欄的問題
這篇文章主要介紹了Android之仿微信QQ聊天頂起輸入法不頂起標(biāo)題欄問題,本文實(shí)例圖文相結(jié)合給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-11-11
Android實(shí)現(xiàn)橡皮筋回彈和平移縮放效果
這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)橡皮筋回彈和平移縮放效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-04-04

