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

来源:互联网 发布:淘宝网阿里旺旺打不开 编辑:程序博客网 时间:2024/05/24 01:39
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;    }


简洁点的:
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);}
0 0
原创粉丝点击