Backlight87
8/24/2017 - 4:59 PM

EventBus的简单使用j

EventBus的简单使用j


//发送方

/**
 * 这边是事件我们要传递的参数,就放在这个类里面
 */
public class LoginEvent {

    private int data1;

    public int getdata1() {
        return data1;
    }

    public void setdata1(int data1) {
        this.data1 = data1;
    }
}


//在你想要发送事件的地方,实例化这个类,填充数据,通过post方法就好了
LoginEvent loginEvent = new LoginEvent();
loginEvent.setInitUserBean(initUserBean);
EventBus.getDefault().post(loginEvent);
                        
                        
                        
                        
===============================================================================

//接收方,一般是在oncreate里进行注册,记得要在ondestroy里解绑


@Override
protected void onCreate(Bundle savedInstanceState) {
        
    EventBus.getDefault().register(this);
        
 }
    
 @Override
 protected void onDestroy() {
     super.onDestroy();
     EventBus.getDefault().unregister(this);
 }
 
 
 //然后在下面的这个方法里面进行捕捉事件,Subscribe是表示运行在主线程
    @Subscribe(threadMode = ThreadMode.MAIN)
    public void onEvent(LoginEvent event) {
        
    }