【CodeReview】防止按钮多次重复点击(规定时间内不允许重复操作)

目的:实现防止按钮多次重复点击(规定时间内不允许重复操作)

之前代码如下:


 private static long lastTime   = 0;
/**
     * 间隔多长时间以后才能继续操作
     *
     * @param time
     * @return  true:不可操作,reture操作
     */
 public static boolean isInterval(int time) {
        boolean flag = true;
        long curClickTime = System.currentTimeMillis();
        if ((curClickTime - lastClickTime) >= time) {
            flag = false;
        }
        lastClickTime = curClickTime;
        return flag;
    }

问题:我们发现不管在不在间隔时间内 我们都进行了时间重置操作

lastClickTime = curClickTime;

这样time时间内,重复点击的话。那样就永远不会往下执行

进行如下修改:
 private static long lastTime   = 0;
/**
     * 间隔多长时间以后才能继续操作
     *
     * @param time
     * @return   true:不可操作,reture操作
     */
    public static boolean isInterval(int time) {
        long curClickTime = System.currentTimeMillis();
        if ((curClickTime - lastTime) >= time) {
            lastTime = curClickTime;
            return false;
        }
        return true;
    }
发布了49 篇原创文章 · 获赞 46 · 访问量 12万+

猜你喜欢

转载自blog.csdn.net/mingtiannihao0522/article/details/102805758