Android防止過(guò)快(多次)點(diǎn)擊的實(shí)現(xiàn)方法-創(chuàng)新互聯(lián)

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

我們注重客戶提出的每個(gè)要求,我們充分考慮每一個(gè)細(xì)節(jié),我們積極的做好網(wǎng)站制作、成都網(wǎng)站制作服務(wù),我們努力開拓更好的視野,通過(guò)不懈的努力,創(chuàng)新互聯(lián)公司贏得了業(yè)內(nèi)的良好聲譽(yù),這一切,也不斷的激勵(lì)著我們更好的服務(wù)客戶。 主要業(yè)務(wù):網(wǎng)站建設(shè),網(wǎng)站制作,網(wǎng)站設(shè)計(jì),微信小程序,網(wǎng)站開發(fā),技術(shù)開發(fā)實(shí)力,DIV+CSS,PHP及ASP,ASP.Net,SQL數(shù)據(jù)庫(kù)的技術(shù)開發(fā)工程師。
public final class AppUtils {
  private AppUtils() {

  }

  private static long mLastClickTime;// 用戶判斷多次點(diǎn)擊的時(shí)間

  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()){
          // 進(jìn)行點(diǎn)擊事件后的邏輯操作
        }
      }
    });

網(wǎng)站欄目:Android防止過(guò)快(多次)點(diǎn)擊的實(shí)現(xiàn)方法-創(chuàng)新互聯(lián)
文章轉(zhuǎn)載:http://muchs.cn/article24/dpsdje.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)建站、App設(shè)計(jì)小程序開發(fā)、網(wǎng)站制作定制開發(fā)、Google

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都網(wǎng)頁(yè)設(shè)計(jì)公司