EventBus作用
簡(jiǎn)化了組建間的通訊;
分離了事件的發(fā)送者和接受者;
避免了復(fù)雜的和易錯(cuò)的依賴(lài)關(guān)系和生命周期問(wèn)題;
能夠有助于單元測(cè)試谒亦。
EventBus具體使用
導(dǎo)入依賴(lài)包
compile'org.greenrobot:eventbus:3.0.0'
定義事件消息類(lèi)
public class MessageEvent{
?????????? public final String message;
?????????? public MessageEvent(String message){
?????????? this.message=message;
??????????? }
}
注冊(cè)和取消事件
EventBus.getDefault().register(this);
EventBus.getDefault().unregister(this);
訂閱者處理事件
@Subscribe(threadMode = ThreadMode.MAIN)
public void onMessageEvent(MessageEvent event){
????????? .................
}
發(fā)布者發(fā)布事件
EventBus.getDefault().post(new MessageEvent("你好!"));