public abstract class NoDoubleClickListener implements View.OnClickListener {
public static final int MIN_CLICK_DELAY_TIME = 1000;
private long lastClickTime = 0;
@Override
public void onClick(View v) {
long currentTime = SystemClock.elapsedRealtime();
if (currentTime - lastClickTime > MIN_CLICK_DELAY_TIME) {
lastClickTime = currentTime;
onNoDoubleClick(v);
}
}
protected abstract void onNoDoubleClick(View view);
}
使用:
/**
* 点击事件
*/
private NoDoubleClickListener mNoDoubleClickListener = new NoDoubleClickListener() {
@Override
protected void onNoDoubleClick(View view) {
switch (view.getId()) {
case R.id.btn_sbjkcx_content_search:
doCommit();
break;
default:
break;
}
}
};
然后再需要进行监听的地方帮顶一下就好了。
btnSearch.setOnClickListener(mNoDoubleClickListener);