什么是事件總線
如果你不知道事件總線是什么奏篙,那么沒有關(guān)系,下面我們先來看這么一個場景:
你是否在開發(fā)的過程中遇到過想在Activity-B中回調(diào)Activity-A中的某個函數(shù)历帚,但Activity又不能手動創(chuàng)建對象來設(shè)置一個Listener什么的沽甥? 你是否想在某個Service中想更新Activity或者Fragment中的界面? 等等之類的組件之間的交互問題……
我們可以使用廣播桶蝎,的方式實現(xiàn)遂黍。但是有點大材小用了。今天我們使用XBaseAndroid來實現(xiàn)Activity俊嗽、Fragment雾家、Service等之間的數(shù)據(jù)傳遞。
1.在接收數(shù)據(jù)界面onCreate方法注冊
EventManager.register(this);
2.在接收數(shù)據(jù)界面onDestroy方法關(guān)閉注冊
EventManager.unregister(this);
3.在接收界面寫入以下方法绍豁。
@Subscribe(threadMode = ThreadMode.MAIN)
public void onMessageEvent(EventMessage event) {
/* Do something */
}
如何發(fā)送消息芯咧?
EventMessage message = EventManager.getMessage();
message.setContent("XBaseAndroid你好");
EventManager.sendMessage(message);