android两次按回来键退出程序实现

android两次按返回键退出程序实现private static Boolean isExit falseprivate static Boolean hasTask

android两次按返回键退出程序实现

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;        }    };public boolean onKeyDown(int keyCode, KeyEvent event) {                // TODO Auto-generated method stub                if(keyCode == KeyEvent.KEYCODE_BACK){//                        System.out.println("user back down");                        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;        }

?

public boolean onKeyDown(int keyCode, KeyEvent event) {if(keyCode == KeyEvent.KEYCODE_BACK){if(isExit == false){isExit = true;Toast.makeText(this, R.string.tip_back_exit, Toast.LENGTH_SHORT).show();if(!hasTask){tExit.schedule(task, 2000);}}else{finish();System.exit(0);}}return false;}
你的排版有点乱…括号什么的不对劲,更正之…顺便,感谢分享… 2 楼 xiaoxaoAndroid 前天   第三次按返回键时会退出程序啊!

第一次按的时候
isExit = false;
hasTask = true;

第二次按的时候(过2秒后)
isExit = true;
hasTask = true;
没有执行下面这句
mTimer.schedule(task, 2 * 1000);

第三次按的时候(过2秒后)
isExit = true;直接退出