欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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

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

android開發(fā)中,免不了會(huì)有很多按鈕的點(diǎn)擊,為防止用戶故意為之,連續(xù)不停的點(diǎn)擊按鈕,造成短時(shí)間內(nèi)不必要的請求過多,或者 出現(xiàn)多個(gè)跳轉(zhuǎn)頁面的問題,客戶端需要對點(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()
      //注意,這里要使用絕對值
      if (abs(currentTime - mLastClickTime) < interval) {
        mLastClickTime = currentTime //賦值一
        return
      }
  
      mLastClickTime = currentTime //賦值二
 
      onMultiClick(v)
 
    }
  }
}

注意點(diǎn): 

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

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

3、注意兩處賦值位置

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

相關(guān)文章

  • 關(guān)于Android中Gradle和jar包下載慢的問題及解決方法

    關(guān)于Android中Gradle和jar包下載慢的問題及解決方法

    這篇文章主要介紹了解決Android中Gradle和jar包下載慢的問題,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-10-10
  • Android View 繪制流程(Draw)全面解析

    Android View 繪制流程(Draw)全面解析

    這篇文章主要為大家全面解析了Android View 繪制流程Draw,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-02-02
  • TextInputLayout輸入框控件的懸浮標(biāo)簽

    TextInputLayout輸入框控件的懸浮標(biāo)簽

    這篇文章主要為大家詳細(xì)介紹了TextInputLayout輸入框控件的懸浮標(biāo)簽,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-12-12
  • Android 單線程模型詳解及實(shí)例

    Android 單線程模型詳解及實(shí)例

    這篇文章主要介紹了Android 單線程模型詳解及實(shí)例的相關(guān)資料,需要的朋友可以參考下
    2017-04-04
  • Android NotificationManager簡單使用詳解

    Android NotificationManager簡單使用詳解

    這篇文章主要為大家詳細(xì)介紹了Android NotificationManager的簡單使用,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • android實(shí)現(xiàn)自動(dòng)關(guān)機(jī)的具體方法

    android實(shí)現(xiàn)自動(dòng)關(guān)機(jī)的具體方法

    android實(shí)現(xiàn)自動(dòng)關(guān)機(jī)的具體方法,需要的朋友可以參考一下
    2013-06-06
  • Android開發(fā)之獲取單選與復(fù)選框的值操作示例

    Android開發(fā)之獲取單選與復(fù)選框的值操作示例

    這篇文章主要介紹了Android開發(fā)之獲取單選與復(fù)選框的值操作,結(jié)合實(shí)例形式分析了Android針對單選按鈕、復(fù)選框的事件響應(yīng)、數(shù)值獲取等相關(guān)操作技巧,需要的朋友可以參考下
    2019-04-04
  • 利用Kotlin開發(fā)你的第一個(gè)Android應(yīng)用

    利用Kotlin開發(fā)你的第一個(gè)Android應(yīng)用

    Kotlin最近真的是大熱啊,所以下面這篇文章主要給大家介紹了關(guān)于利用Kotlin開發(fā)你的第一個(gè)Android應(yīng)用的相關(guān)資料,文中將實(shí)現(xiàn)的步驟介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起看看吧。
    2017-10-10
  • 捕獲與解析Android NativeCrash

    捕獲與解析Android NativeCrash

    Android 開發(fā)中,NE一直是不可忽略卻又異常難解的一個(gè)問題,原因是這里面涉及到了跨端開發(fā)和分析,需要同時(shí)熟悉 Java,C&C++,并且需要熟悉 NDK開發(fā),并且解決起來不像 Java異常那么明了,本文為了解決部分疑惑,將從NE的捕獲,解析與還原等三個(gè)方面進(jìn)行探索
    2021-06-06
  • 使用RecyclerView添加Header和Footer的方法

    使用RecyclerView添加Header和Footer的方法

    RecyclerView雖然作為ListView的替代者有著較好的性能提升,但是ListView的一些常用功能卻沒有提供,比如我們平時(shí)會(huì)經(jīng)常用到的addHeaderView,addFooterView,既然RecyclerView沒有提供這個(gè)方法,我們應(yīng)該如何為列表添加頭部和底部呢,接下來通過本文給大家介紹
    2016-03-03

最新評論