您的位置:首页 > 移动开发 > Android开发

Android - 自定义多击事件

2016-02-11 21:45 417 查看
按钮双击事件 :

双击的原理:当第一次点击的时候记录下点击的时间 A,然后第二次点击的时候获取到第二次的时间 B。如果 B -500 的差值小于上一次点击的时间的话,则认为这两次点击是一次双击事件。

通过记录点击开始时间,到第二次的点击事件,相减得出的时间,将时间判断是否大于500毫秒,是大于500毫秒就是双击了

if(firstclicktime > 0){
long sencondclicktime = SystemClock.uptimeMillis();
long time = sencondclicktime - firstclicktime;
if(time < 500){
Toast.makeText(this, "双击", Toast.LENGTH_SHORT).show();
}else {
firstclicktime = 0;
}
return ;
}
firstclicktime = SystemClock.uptimeMillis();


然而这种方法远远不能达到要求,如果有多次点击代码启不是更麻烦?

所以我们采用google给我们提供的代码,进行使用

private long[] hits = new long[2];
System.arraycopy(hits, 1, hits, 0, hits.length - 1);
// 重新给 mHits[1]赋值
hits[hits.length - 1] = SystemClock.uptimeMillis();
if (hits[0] >= (SystemClock.uptimeMillis() - 500)) {
Toast.makeText(this, "双击", Toast.LENGTH_SHORT).show();


点击的次数激活其中就在定义的数组个数上
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: