在我们使用的很多App中,当你 退出程序时,程序会要求你按两次返回键退出程序(其实就是人家不想你退出,又不好意思明说
,就搞这玩意),之前 我第一次使用的时候,也网上搜过,但亲测之后发现,不是很好用,现在给大家推荐一个亲测 有用的方法吧!对于刚入门的小牛还是有用的!
![生气](http://static.blog.csdn.net/xheditor/xheditor_emot/default/mad.gif)
private static Boolean isExit = false;
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
exitBy2Click(); //调用双击退出函数
}
return false;
}
private void exitBy2Click() {
Timer tExit = null;
if (isExit == false) {
isExit = true;
Toast.makeText(this, "再按一次退出程序", Toast.LENGTH_SHORT).show();
tExit = new Timer();
tExit.schedule(new TimerTask() {
@Override
public void run() {
isExit = false;
}
}, 3000);
} else {
finish();
System.exit(0);
}
}
代码很简单,首先重写了onKeydown方法,当你按下back返回键时,
if (keyCode == KeyEvent.KEYCODE_BACK)
这行代码就会执行,里面就调用了
exitBy2Click()这个
退出方法!这个方法也不难理解,利用一个计时器,默认的isExit是false,进入这个方法后赋值为true,计时器过了3秒,如果你不再按返回键,那么isExit又会被置为false、当3秒内按下back键,则执行finish(),程序退出!