原理:利用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);
}