EventBus3.0使用笔记.md

事件总线这个其实没什么好说的,除了已经ondestroy的fragment或者activity不能接受外,只要定义了的都能接收消息
代码如下,需要注意的一点就是接收的监听事件必须用public修饰并且加上@Subscribe注解

compile 'org.greenrobot:eventbus:3.0.0'
public class MainActivity extends Activity {
    private TextView textView;
    @Override
    public void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        textView = findViewById(R.id.tv);

        textView.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent intent = new Intent();
                intent.setClass(MainActivity.this, SecondActivity.class);
                startActivity(intent);
            }
        });

        EventBus.getDefault().register(this);
    }

    @Subscribe
    public void onMessageEvent(MessageEvent messageEvent){
        textView.setText(messageEvent.getMessage());
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();

        EventBus.getDefault().unregister(this);
    }
}
public class SecondActivity extends AppCompatActivity {
    private TextView tv_receive;

    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_second);
        tv_receive = findViewById(R.id.tv_receive);
        tv_receive.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                EventBus.getDefault().post(new MessageEvent("发送成功"));
                finish();
            }
        });

    }
    @Override
    protected void onDestroy() {
        super.onDestroy();
    }
}
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;
    }
}
posted @ 2018-04-23 20:02  一粒尘_PM  阅读(206)  评论(0编辑  收藏  举报

Android应用开发&研究 - 创建于 2017年8月17日

这是一位Android开发工程师的个人站,内容主要是网站开发方面的技术文章,大部分来自学习或工作,部分来源于网络,希望对大家有所帮助。

致力于Android应用开发&研究工作,专注移动开发,关注互联网前沿技术与趋势。


Font Awesome | Respond.js | Bootstrap中文网