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

Android 按二次后退键退出应用程序

2016-03-03 10:15 253 查看
前言

欢迎大家我分享和推荐好用的代码段~~

声明

欢迎转载,但请保留文章原始出处:

[b][b]CSDN
[/b]:[/b]http://www.csdn.net

雨季o莫忧离:http://blog.csdn.net/luckkof

正文

<span style="font-size:10px;">private static Boolean isExit = false;
private static Boolean hasTask = false;
Timer tExit = new Timer();
TimerTask task = new TimerTask() {

@Override
public void run() {
isExit = false;
hasTask = true;
}
};

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
System.out.println("TabHost_Index.java onKeyDown");
if (keyCode == KeyEvent.KEYCODE_BACK) {
if(isExit == false ) {
isExit = true;
Toast.makeText(this, "再按一次后退键退出应用程序", Toast.LENGTH_SHORT).show();
if(!hasTask) {
tExit.schedule(task, 2000);
}
} else {
finish();
System.exit(0);
}
}
return false;
}
</span>
<span style="font-size:10px;">private long waitTime = 2000;
private long touchTime = 0;
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (event.getAction() == KeyEvent.ACTION_DOWN && KeyEvent.KEYCODE_BACK == keyCode) {
long currentTime = System.currentTimeMillis();
if ((currentTime - touchTime) >= waitTime) {
Toast.makeText(context, "再按一次退出程序", Toast.LENGTH_SHORT).show();
touchTime = currentTime;
} else {
finish();
System.exit(0);
}
return true;
}

return super.onKeyDown(keyCode, event);
}
</span>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: