Android中防止重複點擊的小技巧
在點擊時設定時間標誌,判斷2次點擊的時間差,自訂一個時間間隔SPACE_TIME,做判斷:當2次點擊的時間差大於SPACE_TIME時才能出發點擊。Demo源碼如下。
工具類:package com.plusub.renthostapp.util;/** * package: com.plusub.renthostapp.util * Created by noyet on 2015/11/26. */public class NoDoubleClickUtils { private static long lastClickTime; private final static int SPACE_TIME = 500; public static void initLastClickTime() { lastClickTime = 0; } public synchronized static boolean isDoubleClick() { long currentTime = System.currentTimeMillis(); boolean isClick2; if (currentTime - lastClickTime > SPACE_TIME) { isClick2 = false; } else { isClick2 = true; } lastClickTime = currentTime; return isClick2; }}
使用方式:/** * 訂單日誌 */ private View.OnClickListener logListener = new View.OnClickListener() { @Override public void onClick(View view) { if (!NoDoubleClickUtils.isDoubleClick()) { EventBus.getDefault().post(new RefreshEvent(RefreshEvent.RefreshType.TYPE_LAND_ORDER_LOG, view.getTag())); } } };
自己先Mark下。(∩_∩)