欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Android如何防止快速点击造成多次事件?

程序员文章站 2023-03-28 08:35:23
1、clickutil 工具类 public class clickutil { // 两次点击按钮之间的点击间隔不能少于1000 毫秒 private static final i...

1、clickutil 工具类

public class clickutil {

 // 两次点击按钮之间的点击间隔不能少于1000 毫秒
 private static final int min_click_delay_time = 1000;
 private static long lastclicktime;

 // 返回 true 为点击,false 为快速点击
 public static boolean isfastclick() {
  boolean flag = false;
  long curclicktime = system.currenttimemillis();
  if ((curclicktime - lastclicktime) >= min_click_delay_time) {
flag = true;
  }
  lastclicktime = curclicktime;
  return flag;
 }
}

2、onmulticlicklistener 抽象类

public abstract class onmulticlicklistener implements view.onclicklistener{

 // 两次点击按钮之间的点击间隔不能少于1000毫秒
 private static final int min_click_delay_time = 1000;
 private static long lastclicktime;

 public abstract void onmulticlick(view v);

 @override
 public void onclick(view v) {
  long curclicktime = system.currenttimemillis();
  if((curclicktime - lastclicktime) >= min_click_delay_time) {
// 超过点击间隔后再将lastclicktime重置为当前点击时间
lastclicktime = curclicktime;
onmulticlick(v);
  }
 }
}
 findviewbyid(r.id.btn_click_more).setonclicklistener(new onmulticlicklistener() {
@override
public void onmulticlick(view v) {
 // 进行点击事件后的逻辑操作
}
  });