双击按钮的实现
实现双击退出:
1.单击,弹出提示对话框,提示再按一下退出
2.再次点击--判断两次点击间隔时间
* 小于3s退出
按钮的点击事件:
public void onClick(View view){ //记录当前时间 currentTime = System.currentTimeMillis(); //如果当前时间-设定时间 大于3s if(currentTime - time > 3000){ Toast.makeText(OnClickActivity.this, "再按一次退出程序", 0).show(); Log.i("tag", "currentTime - time"+currentTime+"---"+time+"---"+(currentTime-time)); //记录点击的时间 time = currentTime; }else{ //小于,退出当前界面 finish(); }
手机返回键的点击事件:
/**
*
* 重写父类的方法
*/
@Override
public void onBackPressed() {
currentTime = System.currentTimeMillis();
if(currentTime - time > 3000){
Toast.makeText(OnClickActivity.this, "再按一次退出程序", 0).show();
Log.i("tag", "currentTime - time"+currentTime+"---"+time+"---"+(currentTime-time));
time = currentTime;
}else{
finish();
}
}
运行效果:
通过数组的位移实现双击,三击,四击..
public void onClick(View view){ //先将数组进行copy,从下标为1的位置,拷贝到下标为0的位置,拷贝长度为1 //进行移位 System.arraycopy(timeArray, 1, timeArray, 0, timeArray.length-1); //点击记录当前的时间 timeArray[timeArray.length-1] = System.currentTimeMillis(); //当最后一位-第一位小于1000,弹出吐丝 if(timeArray[timeArray.length-1]-timeArray[0]<=1000){ Toast.makeText(OnClickActivity.this, "双击了按钮--"+(timeArray[timeArray.length-1]-timeArray[0]), 0).show(); } }
运行前:
运行后: