很简单的代码。为了像我一样的菜鸟,随便说说思路。
重写onKeyDown()方法监听返回键。每次点击返回键,设置isExit=true hasTask=true,同时启动Timer。两秒后Timer自动启动task,重置isExit和hasTask。
这两秒内如果再次点击返回键,则退出。
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
Timer exitTimer = new Timer();
TimerTask task = new TimerTask(){
@Override
public void run(){
isExit = false;
hasTask = false;
}
};
if(keyCode == KeyEvent.KEYCODE_BACK){
if(isExit==false){
isExit = true;
Toast.makeText(this, "再按一次退出程序", Toast.LENGTH_SHORT).show();
if(!hasTask){
hasTask=true;
exitTimer.schedule(task, 2000);
}
}else{
finish();
System.exit(0);
}
}
return false;
}

本文介绍了一种在移动端应用中实现双击返回键退出应用的方法。通过重写onKeyDown方法监听返回键,并使用Timer与TimerTask组合实现延迟判断,从而达到用户体验友好的退出确认效果。

576

被折叠的 条评论
为什么被折叠?



