Android 消息分发使用EventBus的实例详解
程序员文章站
2022-07-11 23:23:22
android 消息分发使用eventbus的实例详解
1. androidstudio使用
dependencies {
//最新版本
com...
android 消息分发使用eventbus的实例详解
1. androidstudio使用
dependencies { //最新版本 compile 'org.greenrobot:eventbus:3.0.0' //可以翻倍提高eventbus使用效率 provided 'de.greenrobot:eventbus-annotation-processor:3.0.0-beta1' }
2. 在基类activity中配置
/** * activity基类 */ protected eventbus eb; @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); //单例模式获取到实例并注册 eb = eventbus.getdefault(); eb.register(this); } @override protected void ondestroy() { //反注册 eb.unregister(this); super.ondestroy(); } //主线程 @subscribe(threadmode = threadmode.main) public void onmainevent(eventbean event) { } //主线程 粘性(比如传递intent使用) @subscribe(sticky = true, threadmode = threadmode.main) public void onmainstickevent(eventbean event) { } //后台 @subscribe(threadmode = threadmode.background) public void onbackgroundevent(eventbean event) { } //重新开启一个线程来执行 @subscribe(threadmode = threadmode.async) public void onasyncevent(eventbean event) { }
一般情况下,常用重写onmainevent ( ) 方法即可。
3. 创建自定义消息实体
//根据不同需求自定义 /** * 自定义event消息 */ public class eventbean { public int id;//类型标识 public object data;//数据对象 //省略constructor & getter & setter }
4. 发送消息
继承自基类activity后: eb.post(new eventbean(1, "data")); //粘性 eb.poststicky(new eventbean(1, "data"));
5. 消息处理
根据数据处理的需求重写基类的4个方法即可。
以上就是android 消息分发使用eventbus的实例,如有疑问请留言或者到本站社区交流讨论,本站关于android的文章还有很多希望大家搜索查阅,谢谢大家对本站的支持!
推荐阅读
-
Android中ViewFlipper的使用及设置动画效果实例详解
-
Android 中Lambda表达式的使用实例详解
-
Android 消息分发使用EventBus的实例详解
-
Android中ViewFlipper的使用及设置动画效果实例详解
-
Android 中CheckBox的isChecked的使用实例详解
-
Android 中Lambda表达式的使用实例详解
-
PHP Beanstalkd消息队列的安装与使用方法实例详解
-
Android 自定义 View 中使用 Spannable的实例详解
-
Android 使用PopupWindow实现弹出更多的菜单实例详解
-
Android 消息分发使用EventBus的实例详解