连续点击两次程序就退出程序,这是一个很有趣的程序功能,下来介绍一下我的实现方式(欢迎大家拍砖指点):
1、在Activity中设置一个long型的全局变量 firstTime=0,用来记录第一次按下的时间(单位为毫秒);
2、响应Activity的 onKeyUp事件:
- @Override
- public boolean onKeyUp(int keyCode, KeyEvent event) {
- if (keyCode == KeyEvent.KEYCODE_BACK) {
- long secondTime = System.currentTimeMillis();
- if (secondTime - firstTime > 800) {//如果两次按键时间间隔大于800毫秒,则不退出
- Toast.makeText(MainActivity.this, "再按一次退出程序...",
- Toast.LENGTH_SHORT).show();
- firstTime = secondTime;//更新firstTime
- return true;
- } else {
- System.exit(0);//否则退出程序
- }
- }
- return super.onKeyUp(keyCode, event);
- }