标签(空格分隔): 未分类
Why?
在做一些项目的时候,由于网络等原因,我们常常会造成重复提交事件,特别是做商城订单的时候,往往会生成重复的订单,此时就必须防止事件的重复.
How?
对于这类的事件,处理也特别简单,主要是在提交之前做个时间验证。我们可以设置个默认的时间,比如2000ms,当两次提交事件的时间差小于或等于的时候,我们认定为同一次时间,当大于2000ms的时候,我们认定为两次不同的事件。
just do it!
public class SingleClick{
private static final int DEFAULT_TIME = 2000;
private static long lastTime;
public static boolean isSingle(){
boolean isSingle ;
long currentTime = System.currentTimeMillis();
if(currentTime - lastTime <= DEFAULT_TIME){
isSingle = true;
}else{
isSingle = false;
}
lastTime = currentTime;
return isSingle;
}
}
sample
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(SingleClick.isSingle()){
//do something
}else{
//do otherthing
}
}
});