[Android开发] Rxjava2之路: Rxbinding2(支持基于Rxjava2)

支持Rxjava2的Rxbinding已经在2017年3月6号更新,你只需要依赖以下代码即可,默认Rxjava版本为2.0.2,RxAndroid为2.0.0:

compile 'com.jakewharton.rxbinding2:rxbinding:2.0.0'

本贴作废。

一、啥是Rxbinding

RxBinding 是 Jake Wharton 的一个开源库,它提供了一套在 Android 平台上的基于 RxJava的 Binding API。所谓 Binding,就是类似设置 OnClickListener 、设置 TextWatcher 这样的注册绑定对象的API,对普通的控件,V4,V7等等做了相应的支持。

在Rxbinding的基础上可以很方便的实现很多功能,例如:快点点击两次只取一次、长按事件监听、编辑框快速输入时候不搜索等等功能。 具体栗子看操作符

github地址:
https://github.com/JakeWharton/RxBinding

二、Rxbinding1.x的使用

这种导包方式是使用的Rxjava1.1.5版本的。 不支持Rxjava2。

不用导Rxjava、RxAndroid,只需要导入Rxbinding就会自动帮你导入Rxjava和RxAndroid

一般导包:

compile 'com.jakewharton.rxbinding:rxbinding:0.4.0'

要使用支持support-v4的View就要导包:

compile 'com.jakewharton.rxbinding:rxbinding-support-v4:0.4.0'

要使用支持’appcompat-v7就要导包:

compile 'com.jakewharton.rxbinding:rxbinding-appcompat-v7:1.0.0'

要使用支持’design类型的View就要导包:

compile 'com.jakewharton.rxbinding:rxbinding-design:1.0.0'

三、Rxbinding2的使用

https://github.com/JakeWharton/RxBinding

Jake Wharton大牛一直默默更新, 其实源码已经是支持Rxjava2的了,但是没有发版。所以要使用Rxbinding2 就自己下载源码回来使用依赖库的形式使用。

3.1 下载源码

https://github.com/JakeWharton/RxBinding

下载源码方法1:

下载zip打包的源码,在界面Clone or download -> Download ZIP

下载源码方法2:
(需要电脑已经配置了Git)

直接在Andriod Studio -> File -> New -> Project from Version Control -> Github,然后在地址栏填入https://github.com/JakeWharton/RxBinding.git,clone即可。

3.2 提取Rxbinding包

自己创建一个项目,把rxbinding复制拷贝到自己的项目根目录。修改rxbinding的build.gradle,为下面的样子:

当然buildToolsVersion那些版本号看你自己的sdk。

apply plugin: 'com.android.library'
android {
  compileSdkVersion 25
  buildToolsVersion "25.0.2"


  defaultConfig {
    minSdkVersion 15
    targetSdkVersion 25
    versionCode 1
    versionName "1.0"
  }

}

dependencies {

    compile 'com.android.support:support-annotations:25.1.1'

    compile 'io.reactivex.rxjava2:rxandroid:2.0.1'
    //compile 'io.reactivex:rxandroid:1.1.0'
    // Because RxAndroid releases are few and far between, it is recommended you also
    // explicitly depend on RxJava's latest version for bug fixes and new features.
    compile 'io.reactivex.rxjava2:rxjava:2.0.6'

}

然后依赖到你的app module,在setting.gradle添加rxbinding的module名字:

include ':app', ':rxbinding'

再在app module的builde.gradle依赖里面添加

    compile project(':rxbinding')

重新Sync即可。这样子你就可以在你的app moudle里面使用你Rxbinding2了,支持Rxjava2的噢。。。

提取v4的包需要依赖:

    compile 'com.android.support:support-core-ui:25.1.1'

提取v7的包需要依赖:

    compile 'com.android.support:appcompat-v7:25.1.1'

提取design的包需要依赖:

    compile 'com.android.support:design:25.1.1'

四、Rxbinding2all总包

Rxbingding分的包太多了,这里我把全部搞成了一个module,直接导入一个依赖库即可使用全部View。 但是如果你用的只是简单的控件就不用导全包啦,这样增加的体积大概会增加300k。

(ps: leanback没有集成,因为这货是搞电视的)

下载地址:
http://download.csdn.net/detail/niubitianping/9758775

1、直接把下载回来的文件解压放到你的项目根目录,然后在setting.gradle添加rxbinding,

include ':app', ':rxbinding2all'

2、 再在app module的builde.gradle依赖里面添加

    compile project(':rxbinding2all')

3、 把你的app module的suppert-v4、design、appcompat-v7、support-annotations、Rxjava、RxAndroid 的依赖删掉

4、 然后重新Sync即可

然后就可以愉快的使用Rxbinding2和Rxjava2,/手动滑稽

你可能感兴趣的:(Android-Rxjava2)