Android 防止多次重复点击

 

//    防止多次点击造成的页面一直返回
private static final int MIN_DELAY_TIME = 400;  // 两次点击间隔不能少于400ms 往大调也可以
private static long lastClickTime;

public static boolean isFastClick() { //这个方法可以放到公共类里
    boolean flag = true;
    long currentClickTime = System.currentTimeMillis();
    if ((currentClickTime - lastClickTime) >= MIN_DELAY_TIME) {
        flag = false;
    }
    lastClickTime = currentClickTime;
    return flag;
}

  使用时:

if (isFastClick()) {
    goBack();//你的返回的方法   (这个是我的)
}

有的没有指定明确要引入的包    现整理一二   如有不对的地方   欢迎评论指出     我会及时修改

RxAndroid  防止重复点击  引入以下依赖

//    防止按钮短时间内被重复点击多次
    implementation 'io.reactivex:rxjava:1.2.7'
    implementation 'io.reactivex:rxandroid:1.2.1'
    implementation 'com.squareup.retrofit2:adapter-rxjava:2.1.0'
    implementation 'com.jakewharton.rxbinding:rxbinding:0.3.0'
    implementation 'com.jakewharton.rxbinding:rxbinding-appcompat-v7:0.3.0'
    implementation 'com.jakewharton.rxbinding:rxbinding-design:0.3.0'

 

在需要点击事件的地方添加以下代码  

BasePage.WINDOW_DURATION是点击事件间隔的时间  我设置的为 2 秒  放在公共类里就可以

TextView back = view.findViewById(R.id.iv_bar_left);
RxView.clicks(back)
        .throttleFirst(BasePage.WINDOW_DURATION, TimeUnit.SECONDS)
        .subscribe(new Action1<Void>() {
            @Override
            public void call(Void aVoid) {
                goBack();
            }
        });

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值