安卓开发者联盟

安卓快速开发框架(十六)XBaseAndroid事件总线

2018-07-06  本文已影响67人  往后余生9375

什么是事件总线

如果你不知道事件总线是什么,那么没有关系,下面我们先来看这么一个场景:

你是否在开发的过程中遇到过想在Activity-B中回调Activity-A中的某个函数,但Activity又不能手动创建对象来设置一个Listener什么的? 你是否想在某个Service中想更新Activity或者Fragment中的界面? 等等之类的组件之间的交互问题……

我们可以使用广播,的方式实现。但是有点大材小用了。今天我们使用XBaseAndroid来实现Activity、Fragment、Service等之间的数据传递。

1.在接收数据界面onCreate方法注册

EventManager.register(this);

2.在接收数据界面onDestroy方法关闭注册

EventManager.unregister(this);

3.在接收界面写入以下方法。

@Subscribe(threadMode = ThreadMode.MAIN)
public void onMessageEvent(EventMessage event) {
        /* Do something */
}

如何发送消息?

EventMessage message = EventManager.getMessage();
message.setContent("XBaseAndroid你好");
EventManager.sendMessage(message);
上一篇下一篇

猜你喜欢

热点阅读