首先应用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); //事件的注册
@Override
protected 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控制是否接受