成都网站建设设计

将想法与焦点和您一起共享

Android中使用eventbus3.0实现fragment通信-创新互联

今天就跟大家聊聊有关Android中使用eventbus3.0实现fragment通信,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

罗田网站制作公司哪家好,找创新互联公司!从网页设计、网站建设、微信开发、APP开发、响应式网站设计等网站项目制作,到程序开发,运营维护。创新互联公司从2013年成立到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联公司

1.概述

在之前的博文中简单介绍过如何实现fragment之间的信息交互:《Android中Fragment与Activity之间的交互(两种实现方式)》,今天继续给大家介绍一种可以实现此效果的另外一种方式EventBus。(相比于handler,接口回调,bundle传参,这个简单好用到哭)

EventBus是Android下高效的发布/订阅事件的消息总线。作用是可以代替传统的Intent,Handler,Broadcast或接口函数在Fragment、Activity、Service、线程之间传递数据进行通信,执行方法。做为消息总线,有三个主要元素:

(1)Event:事件

(2)Subscriber:事件订阅者,接受特定的事件

(3)Publisher:事件发布者,用于通知Subscriber有事件发生

结合EventBus以上的三个元素,我们也可以称其为一种观察者设计模式。

EventBus 官网链接http://greenrobot.org/eventbus/

EventBus GitHub链接https://github.com/greenrobot/EventBus

前期相关博文链接:

Android中Fragment与Activity之间的交互(两种实现方式)

Android中Fragment的两种创建方式

2.Demo示例

(1)示例中左侧的按钮,潘侯爷与碧空海触发的事件为EventBus的普通事件发布

(2)左侧粘性事件按钮发布的为粘性事件

Android中使用eventbus3.0实现fragment通信

3.实现步骤

本次Demo架构:

 Android中使用eventbus3.0实现fragment通信

3.1导依赖包

使用AndroidStudio2.2。仍然采用在build.gradle下中dependencies下直接添加如下代码:

compile 'org.greenrobot:eventbus:3.0.0'

同步后完成依赖添加。

3.2布局文件

(1)layout中主布局文件,activity_main.xml文件

<?xml version="1.0" encoding="utf-8"?>

 
 

本文题目:Android中使用eventbus3.0实现fragment通信-创新互联
文章网址:http://chengdu.cdxwcx.cn/article/dechpo.html