Android使用EventBus传递事件
16lz
2022-06-18
EventBus使用过程很简单
EventBus官网
1.引入
// module.app build.gradledependencies {//... implementation 'org.greenrobot:eventbus:3.2.0'}
2.创建Event
public class MessageEvent { public final String message; public MessageEvent(String message) { this.message = message; }}
3.设置监听和声明周期,以MainActivity的片段为例
@Subscribe(threadMode = ThreadMode.MAIN) public void onMessageEvent(MessageEvent event) { Toast.makeText(getBaseContext(), event.message, Toast.LENGTH_LONG).show(); } @Override protected void onStart() { super.onStart(); EventBus.getDefault().register(this); } @Override protected void onStop() { EventBus.getDefault().unregister(this); super.onStop(); }
4.发送Event,这里在Application中模拟了一个异步任务
new Thread(new Runnable() { @Override public void run() { try { Thread.sleep(3000); EventBus.getDefault().post(new MessageEvent("Hello bro")); } catch (InterruptedException e) { e.printStackTrace(); } } }).start();`
更多相关文章
- Android(安卓)App: 按键识别
- Android监听未接来电
- Android上传文件到Django服务器
- 疯狂android讲义---事件处理2
- Android(安卓)TextView 给文本中指定片段添加自定义点击事件
- Android:新手必备的常用代码片段整理(二)
- Android(安卓)开发常用代码片段
- android 监听 USB 拔插广播消息
- android EditText 监听