final int time = 10;
Observable.interval(0, 1, TimeUnit.SECONDS)//延迟时间是0,间隔时间是1,秒
.take(time + 1)//10秒
.map(new Function<Long, Long>() {
@Override
public Long apply(Long aLong) throws Exception {
//使用map操作符,从10开始倒数
return time - aLong;
}
})
.observeOn(AndroidSchedulers.mainThread())//在主线程中更新ui
.subscribe(new Observer<Long>() {
@Override
public void onSubscribe(Disposable d) {
//当开始倒计时的时候按钮不可以点击,并改变按钮的颜色和字体
button.setEnabled(false);
button.setTextColor(Color.parseColor("#be3131"));
button.setBackgroundColor(Color.parseColor("#f0f0f0"));
}
使用Rxjava实现按钮的倒计时
最新推荐文章于 2023-05-16 15:30:14 发布