■返回键
1.屏蔽该触发事件:
常被应用于启动页面/欢迎页面时,“禁止”用户按back键退出。
当然,按home键,然后杀死该进程,也是可以手动退出的啦。
方法一:
@Override
public void onBackPressed() {
// super.onBackPressed(); 注释掉该句即可}
方法二:
@Overridepublic boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
return true;
}
return super.onKeyDown(keyCode, event);
}
2.双击退出:
常被应用于首页,以防用户无意单击back键致使退出应用。
/**
* 菜单、返回键响应*/
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
exitByTwoClick();
}
return false;
}
/**
* 双击退出函数
*/
private static Boolean isExit = false;
private void exitByTwoClick() {
Timer timerExit;
if (!isExit) {
isExit = true; // 准备退出
S.showShort(this, "再按一次退出程序!");
timerExit = new Timer();
timerExit.schedule(new TimerTask() {
@Override
public void run() {
isExit = false; // 取消退出
}
}, 2000); // 如果2秒钟内没有按下返回键,则退出
} else {
finish();
System.exit(0);
}
}