android eventBus 的简单使用(一)
16lz
2021-01-24
首先应用jar包 如果是eclipse请自行下载 https://download.csdn.net/my
compile 'org.greenrobot:eventbus:3.0.0'
然后写一个 实体类用于 存储传递数据和状态值
public class EventBusCarrier { private String eventType; //区分事件的类型 private Object object; //事件的实体类 public Object getObject2() { return object2; } public void setObject2(Object object2) { this.object2 = object2; } private Object object2; public String getEventType() { return eventType; } public void setEventType(String eventType) { this.eventType = eventType; } public Object getObject() { return object; } public void setObject(Object object) { this.object = object; }}
第二步在接受数据的activity中注册event和销毁event
EventBus.getDefault().register(this); //事件的注册
@Overrideprotected void onDestroy() { EventBus.getDefault().unregister(this); //解除注册 super.onDestroy();}
第三步在activity中实现接受方法
// 普通事件的处理 @Subscribe(threadMode = ThreadMode.MAIN) public void handleEvent(EventBusCarrier carrier) { String pass = (String) carrier.getObject(); String cphone = (String) carrier.getObject2(); name.setText(cphone); password.setText(pass);// toast_Base(content); }
第四步在数据发送出实现event
EventBusCarrier eventBusCarrier = new EventBusCarrier();eventBusCarrier.setEventType("1");eventBusCarrier.setObject2(cellphone.getText().toString());eventBusCarrier.setObject(password.getText().toString());EventBus.getDefault().post(eventBusCarrier); //普通事件发布 //
结束
如果接受event的地方比较多 可以通过上面的eventType 在handleEvent控制是否接受
更多相关文章
- Android中的ViewHolder
- Android培训班(14)
- Android(安卓)Input Framework(三)---InputReader&InputDispatch
- Android(安卓)DataBinding 双向数据绑定、事件绑定、使用类方法
- stagefright架构
- Android(安卓)OpenCV中的几种基本数据结构
- Android(安卓)学习 之 Canvas (一)
- Fix bug in the notepad tutorial of Android
- Android(安卓)- Earthquake项目(地震显示器) 的 修正