91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Android 防止過快(多次)點擊的實現方法

發布時間:2020-10-24 18:21:50 來源:腳本之家 閱讀:137 作者:loading 欄目:移動開發

在用戶使用 Android 應用的時候,經常會出現過快且多次點擊同一按鈕的情況,一方面這是因為應用或手機當前有些卡頓,另一方面也可能是由于很多應用并沒有設置按鈕點擊時的 selector 或者其它按鈕響應方式(例如點擊按鈕時按鈕放大,常見于游戲),導致用戶誤認為沒有點擊到當前按鈕,當然,除了相對應的對應用進行優化和設置點擊selector以外,我們還可以做一些其它的工作,例如,判斷按鈕的 onClick 事件在規定事件段內只響應一次(在論壇的搜索功能中,我們常見到每10秒才可以進行一次搜索的設置,這就在一定程度上減少了無效的網絡訪問量,減輕服務器壓力,APP同理),就如下面代碼所示:

public final class AppUtils {
  private AppUtils() {

  }

  private static long mLastClickTime;// 用戶判斷多次點擊的時間

  public static boolean isFastDoubleClick() {
    long time = System.currentTimeMillis();
    if (Math.abs(time - mLastClickTime) < 500) {
      return true;
    }
    mLastClickTime = time;
    return false;
  }
}

btn.setOnClickListener(new View.OnClickListener() {
      @Override
      public void onClick(View v) {
        if (AppUtils.isFastDoubleClick()){
          // 進行點擊事件后的邏輯操作
        }
      }
    });

另一種方式。。。。 新建一個onclicklistener

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);
    }
  }
}
btn.setOnClickListener(new OnMultiClickListener() {
      @Override
      public void onMultiClick(View v) {
        // 進行點擊事件后的邏輯操作
      }
    });

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

自贡市| 山西省| 启东市| 吐鲁番市| 伊金霍洛旗| 尤溪县| 德清县| 黑龙江省| 鹤庆县| 治县。| 阳原县| 库车县| 博兴县| 皮山县| 枞阳县| 思南县| 吐鲁番市| 安平县| 马尔康县| 泽州县| 凤城市| 余江县| 凤阳县| 东明县| 鄱阳县| 虎林市| 磐石市| 舒兰市| 宽城| 马公市| 大关县| 襄城县| 商丘市| 从化市| 抚顺县| 密云县| 沙洋县| 喀喇| 宁阳县| 台北县| 漳浦县|