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

Android雙擊事件攔截方法

 更新時(shí)間:2018年01月03日 15:01:22   作者:keyboy_rl  
下面小編就為大家分享一篇Android雙擊事件攔截方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧

下文我們介紹兩種雙擊事件攔截的方式

1.通過Android的事件分發(fā)機(jī)制進(jìn)行攔截(dispatchTouchEvent)

話不多說,直接上代碼:

/** 判斷是否是快速點(diǎn)擊 */
 private static long lastClickTime;
 public static boolean isFastDoubleClick() {
  long time = System.currentTimeMillis();
  long timeD = time - lastClickTime;
  if (0 < timeD && timeD < 1000) {
   return true;
  }
  lastClickTime = time;
  return false;
 }
 /** 判斷觸摸時(shí)間派發(fā)間隔 */
 @Override
 public boolean dispatchTouchEvent(MotionEvent ev) {
  if (ev.getAction() == MotionEvent.ACTION_DOWN) {
   if (isFastDoubleClick()) {
    return true;
   }
  }
  return super.dispatchTouchEvent(ev);
 }

用法就是直接在你需要攔截雙擊事件的類中加入這兩個(gè)函數(shù),系統(tǒng)會(huì)自動(dòng)調(diào)用dispatchTouchEvent進(jìn)行事件攔截,屏蔽掉雙擊事件,可以通過調(diào)整上述的時(shí)間達(dá)到你想要的效果

缺點(diǎn)就是加入后的整個(gè)activity都會(huì)屏蔽掉雙擊事件,可能會(huì)影響其他組件的正常使用

2.通過一個(gè)工具類來使用雙擊函數(shù)

 //判斷是否是快速點(diǎn)擊
 private static long lastClickTime = 0L; //上一次點(diǎn)擊的時(shí)間
 public static boolean isFastDoubleClick() {
  long time = System.currentTimeMillis();
  long timeD = time - lastClickTime;
  if(timeD<1000){
   //寫自己的雙擊邏輯
   return true;
  }
  lastClickTime = time;
  return false;
 }

使用方法就是將這個(gè)函數(shù)放到一個(gè)工具類中,在你需要進(jìn)行雙擊事件攔截時(shí),直接調(diào)用這個(gè)函數(shù)進(jìn)行判斷即可,有沒有很方便

以上這篇Android雙擊事件攔截方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論

甘孜县| 合水县| 邵武市| 卢湾区| 桂阳县| 比如县| 贞丰县| 陇南市| 博乐市| 微博| 台南市| 临沭县| 黄梅县| 苍山县| 潞城市| 于田县| 巴楚县| 磐安县| 汝州市| 刚察县| 余庆县| 炎陵县| 天祝| 安塞县| 高雄县| 福安市| 长垣县| 民权县| 板桥市| 华安县| 朝阳区| 罗甸县| 普洱| 敦煌市| 新巴尔虎左旗| 顺平县| 清镇市| 保靖县| 大同县| 洞头县| 曲阳县|