Android开发之源码:多次点击事件的原理和实现

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android开发之源码:多次点击事件的原理和实现相关的知识,希望对你有一定的参考价值。

多次点击事件

多次点击事件原理:最后一次点击事件与第一次点击事件的时间间隔是否小于某个时间,当小于的时候,就认为这是一个多次点击事件。

android源码实现效果:

 1 import android.app.Activity;
 2 import android.os.Bundle;
 3 import android.os.SystemClock;
 4 import android.view.View;
 5 
 6 public class MainActivity extends Activity {
 7 
 8     @Override
 9     protected void onCreate(Bundle savedInstanceState) {
10         super.onCreate(savedInstanceState);
11         setContentView(R.layout.activity_main);
12     }
13     //设置一个3位数组。需要点击几次,就设置一个几位的数组
14     long[] mHits = new long[3];
15     public void onClick(View v){
16         //复制数组的元素从第1个位置开始,目标地址是第0个位置,复制的长度为数组长度-1
17         System.arraycopy(mHits, 1, mHits, 0, mHits.length-1);  
18         //给数组最后一个位置赋值
19         mHits[mHits.length-1] = SystemClock.uptimeMillis();
20         //判断数组第一个位置的时间与当前时间的差是否小于500毫秒,假如小于的话,就认为是多次点击事件。
21         if (mHits[0] >= (SystemClock.uptimeMillis()-500)) {
22            System.out.println("---------------------点击了三次----------------------------");
23         }
24     }
25 }

 

以上是关于Android开发之源码:多次点击事件的原理和实现的主要内容,如果未能解决你的问题,请参考以下文章

多次点击事件

Android自定义控件之基本原理

《Android开发艺术探索》之View的事件体系和工作原理学习笔记

Android如何防止快速点击造成多次事件

Android开发之PullToRefresh的Click点击事件的监听实现长按删除Item

Android源码分析:View的事件分发机制探析