RxJava2学习之八:防止按钮重复(连续)点击
RxBinding
RxJava实现数据与视图的绑定使用到了RxBinding。RxBinding是一个开源项目,可以实现数据层与View层的绑定,当数据发生变化,View会自动更新UI。
RxBinding:https://github.com/JakeWharton/RxBinding
注意:RxBinding目前只支持RxJava1
RxJava操作符
本例涉及的RxJava操作符:
- ThrottleFirst — 允许设置一个时间长度,之后它会发送固定时间长度内的第一个事件,而屏蔽其它事件,在间隔达到设置的时间后,可以再发送下一个事件
代码实现
添加依赖
compile 'com.squareup.retrofit2:retrofit:2.1.0'
compile 'com.squareup.retrofit2:converter-gson:2.1.0'
compile 'com.jakewharton.rxbinding:rxbinding:1.0.0'
RxJava实现
Button button = (Button) this.findViewById(R.id.prevent_duplicate_click);
RxView.clicks(button).throttleFirst(1, TimeUnit.SECONDS)
.subscribe(new Observer<Void>() {
@Override
public void onCompleted() {
}
@Override
public void onError(Throwable e) {
}
@Override
public void onNext(Void aVoid) {
Log.i(TAG, "onNext: 按钮点击");
}
});
版权声明:
作者:Joe.Ye
链接:https://www.appblog.cn/index.php/2023/02/25/rxjava2-learning-8-preventing-repeated-continuous-clicking-of-button/
来源:APP全栈技术分享
文章版权归作者所有,未经允许请勿转载。
THE END
0
二维码
打赏
海报
RxJava2学习之八:防止按钮重复(连续)点击
RxBinding
RxJava实现数据与视图的绑定使用到了RxBinding。RxBinding是一个开源项目,可以实现数据层与View层的绑定,当数据发生变化,View会自动更新UI。
RxB……
文章目录
关闭
共有 0 条评论