EventBus简单操作

导依赖

compile files('libs/EventBus2.4.jar')
定义一个MessagrEvent
消息事件类

public class MessageEvent {

    private String message;

    public MessageEvent(String message) {
        this.message = message;
    }

    public String getMessage() {
        return message;
    }

    public void setMessage(String message) {
        this.message = message;
    }
}
注册和解除注册

分别在FirstActivity的onCreate()方法和onDestory()方法里,进行注册EventBus和解除注册。

都在Mainactiviy

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    initView();

    //注册
    EventBus.getDefault().register(this);

    //点击跳转一个页面
    mBtn.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            Intent intent=new Intent(MainActivity.this,Main2Activity.class);
            startActivity(intent);
        }
    });

}
 
//最常用的一个方法  名字不能自己定义必须是这个
//处理事件
public void onEventMainThread(MessageEvent message) {
    //得到MessageEvent
    String string = message.getMessage();
    //赋值
    mText.setText(string);
}
//关闭/解除注册
@Override
protected void onDestroy() {
    super.onDestroy();
    EventBus.getDefault().unregister(this);
}

事件处理

在Main2Activity类里面

点击会直接返回处理事件的MainActivity 的 onEventMainThread()方法里

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main2);
    initView();
    mButton2.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            //发送事件  并且finish()结束
            EventBus.getDefault().post(new MessageEvent("板板"));
            finish();
        }
    });

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值