對EventBus的簡單認識
EventBus是一款針對Android優化的發佈/訂閱事件總線。主要功能是替代Intent,Handler,BroadCast在Fragment,Activity,Service,線程之間傳遞消息.優點是開銷小,代碼更優雅。以及將發送者和接收者解耦。
Github託管地址: https://github.com/greenrobot/EventBus
對EventBus原理圖的簡單認識:
- 四個角色:訂閱者,訂閱事件,總線,發佈者
- 一句話說清:訂閱者訂閱事件到總線,發佈者發佈事件
- 特點:訂閱者可以訂閱多個事件,發送者可以發佈任何事件,發佈者同時也可以是訂閱者
對EventBus的快速掌握
- 訂閱者訂閱事件:
EventBus.getDefault().register(this);
- 訂閱者取消訂閱:
EventBus.getDefault().unregister(this);
- 發佈者發佈事件:
EventBus.getDefault().post(object);
- 訂閱者接收事件(共有四個函數,各功能不同):
public void onEvent(AnyEventType event) {}