RxView.clicks(activityNewsButton) .throttleLast(1000,TimeUnit.MICROSECONDS) .subscribe(new Action1<Void>() { @Override public void call(Void aVoid) { System.out.println("click"); } });
经过调试,这样子还是会输出很多个优艾设计网_设计百科click,好像并没有成功防抖动,为什么
还有compoundbutton也不能实现这个功能
RxCompoundButton.checkedChanges(schoolBusSwitchButton) .throttleLast(1000, TimeUnit.MICROSECONDS) .subscribe(new Action1<Boolean>() { @Override public void call(Boolean aBoolean) { System.out.println("switch"); } });
冰镜湖 2022-09-20 14:03 优艾设计网_Photoshop问答
时间单位错误, 1000微秒=1毫秒=0.001秒这个时间根本起不到防抖动效果本意应该是1000毫秒,也就是1秒吧单位换算如下
ty_134955438 优艾设计网_设计圈 2022-09-20 14:04
另外,throttleFirst()与throttleLast()都可以起到防抖效果效果略有差别throttleFirst()连续点击时只取第一次,后续点击忽略掉throttleLast()连续点击时只取最后一次,前面的点击忽略掉
hj43j2h234jh 2022-09-20 14:10 优艾设计网_在线设计
throttleFirst
精彩评论