標(biāo)簽(空格分隔): 未分類
Why?
在做一些項目的時候,由于網(wǎng)絡(luò)等原因,我們常常會造成重復(fù)提交事件,特別是做商城訂單的時候,往往會生成重復(fù)的訂單,此時就必須防止事件的重復(fù).
How?
對于這類的事件,處理也特別簡單,主要是在提交之前做個時間驗證。我們可以設(shè)置個默認(rèn)的時間,比如2000ms,當(dāng)兩次提交事件的時間差小于或等于的時候,我們認(rèn)定為同一次時間,當(dāng)大于2000ms的時候,我們認(rèn)定為兩次不同的事件。
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
}
}
});