轻量级框架-EventBus
来源:互联网 发布:神话打电话软件 编辑:程序博客网 时间:2024/06/08 11:49
1.环境配置
grade的配置如下:
compile 'org.greenrobot:eventbus:3.0.0'
2.基本使用
首先在onCreate方法添加注册方法
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); EventBus.getDefault().register(this); }
在onDestroy方法中添加注销方法
@Override protected void onDestroy() { EventBus.getDefault().unregister(this); super.onDestroy(); }
之后创建要传递的对象实体类很简单代码如下:
public class EventModel { public EventModel(String key, String value) { this.key = key; this.value = value; } String key; String value;}
最后发送消息然后接收消息
发送消息代码如下
button = (Button) findViewById(R.id.btn_1);button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { EventBus.getDefault().post(new EventModel("kjh","123")); } });
接受处理消息代码如下:
@Subscribe(threadMode= ThreadMode.MAIN) public void getMessage(EventModel model){ Log.e("eee",model.value); }
完整代码如下
public class MainActivity extends AppCompatActivity { Button button; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); EventBus.getDefault().register(this); button = (Button) findViewById(R.id.btn_1); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { EventBus.getDefault().post(new EventModel("kjh","123")); } }); } @Override protected void onDestroy() { EventBus.getDefault().unregister(this); super.onDestroy(); } @Subscribe(threadMode= ThreadMode.MAIN) public void getMessage(EventModel model){ Log.e("eee",model.value); }}
个人觉得相比handler EventBus更简单些还可以不再考虑内存泄漏处理很实用也很简单,简单用法就这些。
0 0
- 轻量级框架-EventBus
- eventbus轻量级的事件发送框架
- Android 认识EventBus轻量级事件总线框架
- EventBus框架
- 框架eventbus
- 轻量级框架
- 新框架 之 EventBus
- EventBus框架使用
- EventBus框架提炼总结
- Android EventBus框架
- Android EventBus 3.0 框架
- 框架EventBus soeazy
- EventBus框架的使用
- EventBus-通信框架
- EventBus 框架详解
- EventBus框架源码分析
- EventBus 消息处理框架
- eventbus 传参框架
- 面试题-华为-数组去重与排序-2
- python中zip函数的使用方法
- URAL - 2080 Wallet 树状数组+last数组
- Android的休眠唤醒机制wake_lock机制
- HTML标签之链接标签
- 轻量级框架-EventBus
- C++异常处理
- 2月3号
- Spring Boot核心原理-自动配置
- jquery动态生成table,只可以横向或纵向的合并
- 找出字符串中的最长数字串
- CentOS7下TestLink环境的部署
- iOS安装SSL Kill Switch2
- 【Bzoj1192】鬼谷子的钱袋