在Android中,今天偶然发现了一个问题,以前在应用主界面经常写的点击物理返回键后,在两秒内再次点击退出程序代码如下:
@Override public boolean onKeyDown(int keyCode, KeyEvent event) { if (keyCode == KeyEvent.KEYCODE_BACK) { if (System.currentTimeMillis() - oldBackTime > 2000) { oldBackTime = System.currentTimeMillis(); Toast.makeText(this, R.string.back, Toast.LENGTH_SHORT).show(); } else { finish(); } return false; } return super.onKeyDown(keyCode, event); }
在主界面长按物理返回键时,也会退出应用
后来又重新换了个重写的方法:
@Override public void onBackPressed() { if (System.currentTimeMillis() - oldBackTime > 2000) { oldBackTime = System.currentTimeMillis(); Toast.makeText(this, R.string.back, Toast.LENGTH_SHORT).show(); } else { finish(); } }就不会有上面的问题了