Android防止重复点击的解决办法

我们在开发中常会遇到重复点击跳出多个目标界面或重复响应的问题,解决这个问题我首先想到的就是Java线程当中的“同步锁”概念也就是synchronized。

一个小工具类的确解决了问题,以下是代码:

public class NoDoubleClick {
    private static long lastClickTime;
    //这里设定两次点击时的时间间隔
    private final static int SPACE_TIME = 500;

    public static void recordLastClickTime() {
        lastClickTime = 0;
    }

    public synchronized static boolean isDoubleClick() {
        long currentTime = System.currentTimeMillis();
        boolean isClick2;
        if (currentTime - lastClickTime > SPACE_TIME) {
            isClick2 = false;
        } else {
            isClick2 = true;
        }
        lastClickTime = currentTime;
        return isClick2;
    }
}



使用以上工具类:

if (!NoDoubleClick.isDoubleClick()) { onOpenImage(); }

你可能感兴趣的:(java,android,线程,Class,界面)