EventBus-的使用

一.在Android Studio中介绍过关于eventbus导航的说明.

后面有相应的链接.

二.在Android Studio中介绍过关于eventbus使用说明.

第一就是eventbus是什么东西?用来干什么的?

EventBus是一款针对Android优化的发布/订阅事件总线。主要功能是替代Intent,Handler,BroadCast在Fragment,Activity,Service,线程之间传递消息.优点是开销小,代码更优雅。以及将发送者和接收者解耦.   底层实现是handle实现的,依赖到工程的jar包很小.是一个传参框架.

  总结:主要是在线程之间常见的Activity.服务,fragment之间进行数据的传递.

第二是eventbus怎么使用?

可以到github上面看看,github上eventbus的链接

还提供了专门的网站: EventBus网站地址

图片:

第一步:

Add EventBus to your project

在Gradle:中添加,并同步:  也就是在要使用的moudle的build.gradle下面添加

compile 'org.greenrobot:eventbus:3.0.0'


第二步:哪一个类中要接受接受订阅的发送消息,设置注册,后面一定要在注销注册

注册:
    
在销毁的时候一定要记得解除注册
                       
                         

第三步就是,消息的发送和接受的设置:

  


这是发送消息:



关于使用EventBus发送和接受的总结:

以上接受的消息方法有几处要求

1 方法必须有@Subscribe标注

2  明确指定当前线程 threadMode = ThreadMode.MAIN 。默认threadMode = ThreadMode.POSTING,即跟post方法的线程一致

3  方法参数类型与post发送的类型一致才能接收

4 方法建议以onEventXX命名,不强制但是比较规范

三.在Android Studio中使用demo

     需求:首先demo的来源就是在项目中listview或者是recycleview展示一些商品,下面是评论数量和点赞数量,我们点击这个商品可以进入到详情页面,我们可以发表自己的评论和我们可以点赞,评论数量会在原有的基础上加一,代价的数量也会加一.

展示效果图:

                 

进去的评论页面,会将评论显示在商品的展示页面.

                      

点赞按钮.

                      


最后的效果图:

          


demo下载地址;

                     demo下载地址






  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
abp-vnex eventbus是一个用于在ABP框架中进行事件通信的模块。要使用abp-vnex eventbus,您需要按照以下步骤进行安装和配置: 1. 首先,您需要安装abp-vnex eventbus模块。可以通过运行以下命令来安装: ```shell npm install abp-vnex-eventbus --save ``` 2. 安装完成后,您需要在您的应用程序的模块中导入abp-vnex eventbus模块。在您的模块文件中,添加以下代码: ```typescript import { AbpVnexEventBusModule } from 'abp-vnex-eventbus'; @NgModule({ imports: [ AbpVnexEventBusModule ] }) export class YourModule { } ``` 3. 现在,您可以在您的组件或服务中使用abp-vnex eventbus来发送和接收事件。首先,您需要导入`AbpVnexEventBusService`: ```typescript import { AbpVnexEventBusService } from 'abp-vnex-eventbus'; ``` 4. 在您的组件或服务中,您可以使用`AbpVnexEventBusService`的`emit`方法来发送事件。例如,发送一个名为`myEvent`的事件: ```typescript constructor(private eventBus: AbpVnexEventBusService) { } sendEvent() { this.eventBus.emit('myEvent', { data: 'Hello World' }); } ``` 5. 要接收事件,您可以使用`AbpVnexEventBusService`的`on`方法。在您的组件或服务中,添加以下代码: ```typescript constructor(private eventBus: AbpVnexEventBusService) { } ngOnInit() { this.eventBus.on('myEvent').subscribe((eventData) => { console.log(eventData.data); // 输出:Hello World }); } ``` 这样,您就可以使用abp-vnex eventbus模块来进行事件通信了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值