Android两次按返回键退出应用程序

来源:互联网 发布:网络键盘侠800作文 编辑:程序博客网 时间:2024/05/18 04:01

关于这个问题,我以前并没有从网上参考别人的方法,自己想法又总是有些呆板。之前采用的方法是,设置一个int标志,0和1.按的时候判断是不是0,不是,加1,是,退出。这个低级错误真是惭愧。导致后来经过几次很长的时间间隔按也会退出。后来想出用定时器,设置时间。效率很低。其实java有直接获取现在的时间的API,再减去上次的时间不就可以得出间隔了?

代码:

 private long mExitTime ; //退出时间

//捕捉按键@Overridepublic boolean onKeyDown(int keyCode, KeyEvent event) {if(keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0){if ((System.currentTimeMillis() - mExitTime) > 2000 ) {Toast.makeText(this, "再按一次退出豆瓣读书", Toast.LENGTH_SHORT).show();mExitTime = System.currentTimeMillis();}else{SysApplication.getInstance().exit();}return true;} return super.onKeyDown(keyCode, event);}

这里的SysAppication.getInstance().exit();是我自己封装的类。大家用的时候替换自己的。

0 0