RxBinding2(一)基础库组件

本文介绍RxBinding如何将Android View事件转化为事件流,利用RxJava进行处理。内容涵盖RxBinding项目简介、源码解析以及实战应用,强调了防止内存泄漏的策略,如使用CompositeDisposable或RxLifecycle。还提到了RxView事件和基础组件的使用示例。
摘要由CSDN通过智能技术生成

RxBinding绑定View事件

通过RxBinding我们可以将View的事件转化为事件流,然后就可以采用RxJava发射事件流,操作符进行操作。
RxBinding项目地址
RxBinding2源码解析
RxBinding2(二)MaterialDesign系列
RxBinding2(三)Support-V4库和RecyclerView

全部依赖库support支持

	//基础库
	implementation 'com.jakewharton.rxbinding2:rxbinding:2.2.0'
    implementation 'com.jakewharton.rxbinding2:rxbinding-design:2.2.0'  
    implementation 'com.jakewharton.rxbinding2:rxbinding-recyclerview-v7:2.2.0'
    //V4,V7对应于android的V4,V7包组件
    implementation 'com.jakewharton.rxbinding2:rxbinding-support-v4:2.2.0'
    implementation 'com.jakewharton.rxbinding2:rxbinding-appcompat-v7:2.2.0'
    //电视相关
    implementation 'com.jakewharton.rxbinding2:rxbinding-leanback-v17:2.2.0'
    每一个rxbinding2依赖库都以一个xxx-kotlin支持版本
    settings.gragle中include ':app', ':rxbinding'

实战:
全部RxView事件,注意防内存泄漏,要么将订阅添加到CompositeDisposable,在onDestory中clear,要么采用RxLifecycle控制生命周期。
xxxEvent:因RxJava方法只有一个参数,所以xxxEvent里面封装了多个参数的情况。
handle:返回false则拦截事件,不发送事件

//基础库可以得到基础组件
implementation 'com.jakewharton.rxbinding3:rxbinding:3.0.0-alpha1'
  private void RxView(){
   
        View mView = new View(this);
        //设置是否可见
        RxView.visibility(mView).accept(mBoolean);
        //设置是否可点击
        RxView.clickable(mView).accept(mBoolean);
        //设置是否可用
        RxView.enabled(mView).accept(mBoolean);
        //设置是否选中
        RxView.selected(mView).accept(mBoolean);
        //设置是否按下
        RxView.pressed(mView).accept(mBoolean);
        //设置是否激活
        RxView.activated(mView).accept(mBoolean);
        //View被添加
        RxView.attaches(mView);
        //View被添加时触发
        RxView.attachEvents(mView);
        //View被移除
        RxView.detaches(mView);
        //点击事件
        RxView.clicks(mView);
        //长点击事件
        RxVi
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值