防止连续点击的触发事件,可以有好多种方法来处理。
方法一:像Button、ImageView之类的,可以在点击之后设置button.setClickable(false)来处理,然后在界面重新加载时,设置button.setClickable(true),这个思路适合界面操作比较简单,只有一个或两个提交修改按钮的时候。
方法二:既然是为了防止连续点击,可以判断该按钮两次点击的时间间隔,如果两个点击的时间差小于某一个规定值,则不响应点击事件。
具体代码思路如下:
首先写一个公共的方法,用于判断两次点击时间差。
public class Utils {
private static long lastClickTime;
public static boolean isFastDoubleClick() {
long time = System.currentTimeMillis();
if ( time - lastClickTime < 500) {
return true;
}
lastClickTime = time;
return false;
}
}
然后在按钮的onClick()方法中调用即可。
public void onClick(View v) {
if (Utils.isFastDoubleClick()) {
return;
}
//这里写点击想要做的事情
}