Android 防止重复点击

1.第一种方式:

private static final int MIN_DELAY_TIME = 2000; // 两次点击间隔不能少于2000ms

private static long lastClickTime = System.currentTimeMillis();

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()){

//判断重复点击 true

}else{

//不是重复点击 false

}

第2种方式:

复制代码
private long oldClickTime = 0;
long clickTime = System.currentTimeMillis();
if (clickTime - oldClickTime < 800) return;
oldClickTime = clickTime;

使用如下:

第3种方式:

复制代码
private static final int MIN_DELAY_TIME = 500; // 两次点击间隔
private static long lastClickTime = 0L;

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()) {
    Log.d(TAG, "onClick");
    return;
}

Android中防止重复点击的小技巧_android 防重复点击-CSDN博客

相关推荐
大圣编蚕11 小时前
初探 NDK 的世界:从零开始理解 Android 原生开发
android
云贝贝贝11 小时前
MySQL 慢查询定位与索引优化实战
android
骑着蜗牛撵大象32712 小时前
服务下线不再炸:分层关闭、TCP 存活探测与负载均衡排水的落地套路
android·tcp/ip·负载均衡·tcp·高可用·健康检查·优雅关闭
三少爷的鞋14 小时前
别再这么写协程了!Marcin Moskała 剖析的 几个常见协程误区与重构
android
mmsx16 小时前
Android 防二次打包第一道锁:签名校验与完整性校验
android·kotlin
mmsx16 小时前
Android 混淆不等于安全:二次打包链路完整走一遍
android·kotlin
小宋102118 小时前
Agent轨迹级评测实战:工具选择、预算超限与回归门禁
android·网络·人工智能·回归
墨天梦20 小时前
D05_ViewModel与单向数据流
android·kotlin
蒸鱼Yuzheng21 小时前
Android 构建可复现性:APK 指纹、文件级差异与供应链审计
android·apk·devops·软件供应链·可复现构建
墨天梦1 天前
D03_Compose列表与稳定身份
android·gitee·kotlin