看了几个 rxbus 的库但是我个人并不喜欢,很多有下面的这种写法 thread = EventThread.IO, tags = {@Tag(BusAction.EAT_MORE) } 加了一个 Tag ,本身 rxjava 封装了 ofType(eventType) 这个方法转换,添加了 Tag 之后,要找到目标方法就不能直接 ofType() 还有多加一层判断,个人觉得这是不经济的,而且 ofType()也失去了它原本的作用,感觉这样效率不高,有几个都没用 oftype()而是完全注解实现目标方法的查找,(这不就是 eventbus 的实现嘛?)。 有些还加了其他的注解,用起来个人非常不喜欢,感觉很多余,还是像 eventbus 那种用起来,看起来都简简单单最好。 个人 RxBus 用法: // 普通响应发送 RxBus.getInstance().post(AnyType anyType); // Sticky 发送 RxBus.getInstance().postSticky(AnyType anyType); // 注册 @Override protected void onCreate(Bundle savedInstanceState) { ... RxBus.getInstance().register(this); } // 注销 @Override protected void onDestroy() { super.onDestroy(); RxBus.getInstance().unRegister(this); } // 响应 @Subscribe(thread = EventThread.MAIN_THREAD) public void show(Action.Action1 str) { Toast.makeText(this, str.getStr(), Toast.LENGTH_SHORT).show(); } 链接:https://github.com/genius158/YRxBus 好歹在无聊的日子里,竟然做了不无聊的事,完成了第一个个人项目中比较实用的库,“有钱的捧个钱场,没钱的捧个人场”