在使用应用的时候经常会看见再点一次退出、或者安卓要打开开发者选项需要点击很多次安卓版本进入开发者模式,对于双击我们可以这样处理:
long firstTime;
public void doubleClick(View view) {
if (firstTime == 0) {
firstTime = SystemClock.uptimeMillis();
} else {
long useTime = SystemClock.uptimeMillis() - firstTime;
if (useTime <= 300) {
Toast.makeText(getApplicationContext(), "双击了",
Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(getApplicationContext(), "你点太慢了",
Toast.LENGTH_SHORT).show();
}
firstTime = 0;
}
}
运行效果:
如果需要三击事件?可以再加上一个记录时间的变量,4、5、6、7、1000击事件呢?这样加就会累死人的,于是我们可以参考谷歌大牛的多击事件的代码:
三击事件:
//这里数组长度是多少就是多少击
long[] hits = new long[3];
public void doubleClick(View view) {
System.arraycopy(hits, 1, hits, 0, hits.length - 1);
hits[hits.length - 1] = SystemClock.uptimeMillis();
if (hits[0] >= (SystemClock.uptimeMillis() - 500)) {
Toast.makeText(getApplicationContext(), "你点击了" + hits.length + "次",
Toast.LENGTH_SHORT).show();
}
}
上面的代码非常优美,可重用毒相当的高!
效果: