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博客