android 怎么避免多次点击
1个回答
展开全部
解决的思路如下:
1. 需要定义一个全局变量 lastClickTime, 用来记录最后点击的时间.
2. 每次点击前需要进行判断, 用lastClickTime 和当前时间想比较,并且更新最后点击时间,若小于临界值,则算无效点击,不触发事件
下面请看代码:
工具类:
public class CommonUtils {
private static long lastClickTime;
public static boolean isFastDoubleClick() {
long time = System.currentTimeMillis();
long timeD = time - lastClickTime;
if ( 0 < timeD && timeD < 800) {
return true;
}
lastClickTime = time;
return false;
}
}
控件点击的处理:
public void onClick(View v) {
if (Utils.isFastDoubleClick()) {
return;
}else{
//弹出Toast或者Dialog
}
}
3
这样,两次点击时间相隔小于800ms,便不会触发事件,具体的临界时间可以根据需求自己修改.
1. 需要定义一个全局变量 lastClickTime, 用来记录最后点击的时间.
2. 每次点击前需要进行判断, 用lastClickTime 和当前时间想比较,并且更新最后点击时间,若小于临界值,则算无效点击,不触发事件
下面请看代码:
工具类:
public class CommonUtils {
private static long lastClickTime;
public static boolean isFastDoubleClick() {
long time = System.currentTimeMillis();
long timeD = time - lastClickTime;
if ( 0 < timeD && timeD < 800) {
return true;
}
lastClickTime = time;
return false;
}
}
控件点击的处理:
public void onClick(View v) {
if (Utils.isFastDoubleClick()) {
return;
}else{
//弹出Toast或者Dialog
}
}
3
这样,两次点击时间相隔小于800ms,便不会触发事件,具体的临界时间可以根据需求自己修改.
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询