一. 首先你要为你的app添加依赖库:
compile 'org.greenrobot:eventbus:3.0.0'
二. 注册:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
if (!EventBus.getDefault().isRegistered(this)) {
EventBus.getDefault().register(this);
}
}
@Override
protected void onDestroy() {
super.onDestroy();
if (EventBus.getDefault().isRegistered(this)) {
EventBus.getDefault().unregister(this);
}
}
三. 自定义一个传参的类
public class ResultEvent {
private int code ;
private String classType = null;
public ResultEvent(int code ,String classType) {
this.code = code;
this.classType = classType;
}
public int getCode(){
return code;
}
public String getClassType(){
return classType;
}
}
四. 在注册的Activity里加入回调的方法
@Subscribe
public void onEventMainThread(ResultEvent event) {
if (event != null){
Log.i("yqw","code=="+event.getCode());
Log.i("yqw","classType=="+event.getClassType());
}
}
五. 在其他任意地方发送消息
EventBus.getDefault().post(new ResultEvent("128","OtherActivityOrFragment"));
就这么简单,,记得在Fragment里的时候对加入一个提供判断的标识,免得多个消息被重复回调执行方法。
转载请标注原出处http://blog.csdn.net/you943047219/article/details/51405305