原理:利用onKeyDown方法截获后退键点击事件,然后对两次的点击时间差进行判断。
@Override public boolean onKeyDown(int keyCode, KeyEvent event) { if(keyCode == KeyEvent.KEYCODE_BACK){ if((System.currentTimeMillis()- mCurrentTime) > 2000){ Toast.makeText(MainActivity.this, "再按一次退出程序", Toast.LENGTH_SHORT).show(); mCurrentTime = System.currentTimeMillis(); }else{ finish(); } return true;//如果是后退键,则截获动作 } return super.onKeyDown(keyCode, event); }