最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

android屏蔽按鈕連續(xù)點(diǎn)擊的示例代碼

 更新時(shí)間:2020年12月18日 11:28:54   作者:唐人小調(diào)  
這篇文章主要介紹了android屏蔽按鈕連續(xù)點(diǎn)擊的示例代碼,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

android開發(fā)中,免不了會(huì)有很多按鈕的點(diǎn)擊,為防止用戶故意為之,連續(xù)不停的點(diǎn)擊按鈕,造成短時(shí)間內(nèi)不必要的請(qǐng)求過多,或者 出現(xiàn)多個(gè)跳轉(zhuǎn)頁(yè)面的問題,客戶端需要對(duì)點(diǎn)擊動(dòng)作 做屏蔽處理,即屏蔽短時(shí)間內(nèi)連續(xù)點(diǎn)擊。(當(dāng)然,這樣也只是盡可能減少上述問題的出現(xiàn),手速夠快的情況下,還是會(huì)出現(xiàn))

正確代碼:

abstract class OnMultiClickListener(private val interval: Long = MULTI_CLICK_INTERVAL): View.OnClickListener {
  private companion object {
    private const val MULTI_CLICK_INTERVAL = 500L
  }
 
  private var mLastClickTime = 0L
 
  abstract fun onMultiClick(v: View?)
 
  final override fun onClick(v: View?) {
    v.runSafety {
      val currentTime = System.currentTimeMillis()
      //注意,這里要使用絕對(duì)值
      if (abs(currentTime - mLastClickTime) < interval) {
        mLastClickTime = currentTime //賦值一
        return
      }
  
      mLastClickTime = currentTime //賦值二
 
      onMultiClick(v)
 
    }
  }
}

注意點(diǎn): 

1、如果間隔時(shí)間設(shè)置過長(zhǎng),可能會(huì)造成視覺上點(diǎn)擊卡頓的現(xiàn)象

2、如果修改系統(tǒng)時(shí)間,則可能造成時(shí)間判斷出問題,進(jìn)而導(dǎo)致按鈕點(diǎn)擊無(wú)響應(yīng)。故必須用絕對(duì)值進(jìn)行比較。

3、注意兩處賦值位置

到此這篇關(guān)于android屏蔽按鈕連續(xù)點(diǎn)擊的文章就介紹到這了,更多相關(guān)android屏蔽按鈕連續(xù)點(diǎn)擊內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論

孟连| 崇州市| 义乌市| 林芝县| 右玉县| 庄河市| 沂水县| 霍城县| 吉林市| 册亨县| 弥渡县| 滨州市| 大厂| 延长县| 巴中市| 上饶市| 西藏| 郓城县| 榆中县| 隆回县| 阿坝| 晋宁县| 沈阳市| 怀来县| 龙门县| 沾化县| 姚安县| 福海县| 茶陵县| 嘉兴市| 咸丰县| 逊克县| 乐清市| 松潘县| 报价| 汝州市| 马边| 台南县| 乐亭县| 扎兰屯市| 吐鲁番市|