android 再按一次后退键退出应用程序

来源:互联网 发布:linux man命令 分类 编辑:程序博客网 时间:2024/05/27 20:49

赠人玫瑰,手留余香.人生最大的快乐不在于占有什么而在于追求什么的过程.

转自:http://gundumw100.iteye.com/blog/1561861

private static boolean isExit = false;private static boolean hasTask = false;private Timer tExit = new Timer();private TimerTask timerTask = new TimerTask() {@Overridepublic void run() {isExit = false;hasTask = true;}};public boolean onKeyDown(int keyCode, KeyEvent event) {if (keyCode == KeyEvent.KEYCODE_BACK) {if (isExit == false) {isExit = true;Toast.makeText(this, "再按一次后退键退出应用程序", Toast.LENGTH_SHORT).show();if (!hasTask) {tExit.schedule(timerTask, 2000);}} else {Intent intent = new Intent();intent.setAction(EXIT_FLAG);finish();sendBroadcast(intent);}return true;}return super.onKeyDown(keyCode, event);}

或者

private long waitTime = 2000;  private long touchTime = 0; @Overridepublic 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);}






原创粉丝点击