EventBus接收消息 :
- ThreadMode.MAIN 表示这个方法在主线程中执行
- ThreadMode.BACKGROUND 表示该方法在后台执行 , 不能并发处理
- ThreadMode.ASYNC 也表示在后台执行 , 可以异步并发处理
- ThreadMode.POSTING 表示该方法和消息发送方在同一个线程中执行
粘性事件
之前说的使用方法, 都需要先注册, 再post , 才能接收到事件
如果使用 postSticky 发送事件, 那么可以不需要先注册 , 也能接收到事件
- 构造发送信息类
- 发送消息 EventBus.getDefault().postSticky(new StickyEvent("我是粘性事件"));
- 接收消息 和普通EventBus一样,只不过注解 多了sticky属性
@Subscribe(threadMode = ThreadMode.MAIN, sticky = true) - 注册 EventBus.getDefault().register(CActivity.this);
- 解注册