添加EventBus
compile ‘de.greenrobot:eventbus:2.4.0’
或
直接下载jar包 |点击下载
注册和注销EventBus
() {super.onStart();//注册EventBusEventBus.getDefault().register(this);Logger.e(“EventBus注册”);}() {super.onStop();//注销EventBusEventBus.getDefault().unregister(this);Logger.e(“EventBus注销”);}
自定义消息类型
{public String message;public MessageEvent(String message){this.message=message;}}
创建消息接受
(MessageEvent event) {Logger.e(“onEventMainThread”+event.message);tv_demo.setText(event.message);}
Post消息
1.在子线程中给Activity发消息更新UIclass MyThread extends Thread{() {//发送消息EventBus.getDefault().post(new MessageEvent(“这是EventBus发送的消息更新UI”));}};2.在Service中发消息给Activity更新UI{String ACTION_START=”ACTION_START”;@Overridepublic IBinder onBind(Intent intent) {return new Binder();}(Intent intent, int flags, int startId) {if(ACTION_START.equals(intent.getAction())){new MyServerThread().start();}return super.onStartCommand(intent, flags, startId);}class MyServerThread extends Thread{() {EventBus.getDefault().post(new MessageEvent(“这是在MyService的MyServerThread线程中Post的消息”));}}}3.在Receiver中发送消息给Activity更新UI{String ACTION_SEND=”ACTION_SEND”;(Context context, Intent intent) {if (ACTION_SEND.equals(intent.getAction())){EventBus.getDefault().post(new MessageEvent(“这是在[广播]中给Activity发送消息”));}}}
github地址 | 欢迎Star
,接受失败等于打破完美的面具,接受失败等于放松自己高压的心理,