53 lines
1.6 KiB
Plaintext
53 lines
1.6 KiB
Plaintext
|
package com.example.administrator.ximengjianyu.utils;
|
|||
|
|
|||
|
import android.util.Log;
|
|||
|
|
|||
|
/**
|
|||
|
* Created by wuxiaohui on 2017/7/28.
|
|||
|
* 判断用户点击按钮间隔时间,如果间隔时间太短,则认为是无效操作,否则进行相关业务处理
|
|||
|
*/
|
|||
|
|
|||
|
public class ButtonUtils {
|
|||
|
private static long lastClickTime = 0;
|
|||
|
private static long DIFF = 1000;
|
|||
|
private static int lastButtonId = -1;
|
|||
|
|
|||
|
/**
|
|||
|
* 判断两次点击的间隔,如果小于1000,则认为是多次无效点击
|
|||
|
*
|
|||
|
* @return
|
|||
|
*/
|
|||
|
public static boolean isFastDoubleClick() {
|
|||
|
Log.e("isFastDoubleClick", "短时间内按钮多次触发");
|
|||
|
return isFastDoubleClick(-1, DIFF);
|
|||
|
}
|
|||
|
|
|||
|
/**
|
|||
|
* 判断两次点击的间隔,如果小于1000,则认为是多次无效点击
|
|||
|
*
|
|||
|
* @return
|
|||
|
*/
|
|||
|
public static boolean isFastDoubleClick(int buttonId) {
|
|||
|
Log.e("isFastDoubleClick", "短时间内按钮多次触发");
|
|||
|
return isFastDoubleClick(buttonId, DIFF);
|
|||
|
}
|
|||
|
|
|||
|
/**
|
|||
|
* 判断两次点击的间隔,如果小于diff,则认为是多次无效点击
|
|||
|
*
|
|||
|
* @param diff
|
|||
|
* @return
|
|||
|
*/
|
|||
|
public static boolean isFastDoubleClick(int buttonId, long diff) {
|
|||
|
long time = System.currentTimeMillis();
|
|||
|
long timeD = time - lastClickTime;
|
|||
|
if (lastButtonId == buttonId && lastClickTime > 0 && timeD < diff) {
|
|||
|
Log.e("isFastDoubleClick", "短时间内按钮多次触发");
|
|||
|
return true;
|
|||
|
}
|
|||
|
lastClickTime = time;
|
|||
|
lastButtonId = buttonId;
|
|||
|
return false;
|
|||
|
}
|
|||
|
}
|