android 双击事件的算法

业余的双击算法:


android 双击事件的算法_第1张图片

专业的双击算法:


android 双击事件的算法_第2张图片

1.System.arraycopy(mHits, 1, mHits, 0, mHits.length - 1);

这是在拷贝数组,将原来的数组中的元素的索引统一向前移动一位,原来的第一个元素被覆盖放弃,原来的最后一位成了倒数第二位。

2.mHits[mHits.length - 1] = SystemClock.uptimeMillis();

这是将数组的最后一个元素赋值为当前的时间。

3.这样的话 每次执行click的时候,就会把当前的时间存放在最后一位,而前若干次的click时间都会被顺延到数组的前一位,每次都判断一下数组的最后一个元素即当前时间 与 数组的第一个元素即往前length个的时间 间隔是否满足要求来触发多击逻辑。

你可能感兴趣的:(android 双击事件的算法)