Google实现算法
val imageLogo = header?.findViewById<ImageView>(R.id.img_logo)
val counts: Int = 8
val duration: Long = 3 * 1000
val mHits = LongArray(counts)
imageLogo?.setOnClickListener {
/**
* 实现双击方法
* src 拷贝的源数组
* srcPos 从源数组的那个位置开始拷贝.
* dst 目标数组
* dstPos 从目标数组的那个位子开始写数据
* length 拷贝的元素的个数
*/
System.arraycopy(mHits, 1, mHits, 0, mHits.size - 1)
//实现左移,然后最后一个位置更新距离开机的时间,如果最后一个时间和最开始时间小于DURATION,即连续5次点击
mHits[mHits.size - 1] = SystemClock.uptimeMillis()
if (mHits[0] >= (SystemClock.uptimeMillis() - duration)) {
val tips = "您已在[" + DURATION + "]ms内连续点击【" + mHits.size + "】次了!!!"
showToast(tips)
}
}