1.使用系统时间判断
long startTime = 0;
@Override
public void onBackPressed() {
long currentTime = System.currentTimeMillis();
if ((currentTime - startTime) >= 2000) {
Toast.makeText(MainActivity.this, "再按一次退出", Toast.LENGTH_SHORT).show();
startTime = currentTime;
} else {
finish();
}
}
2.感觉第二种开发中用的多一点
//双击退出的标志
private boolean isExit;
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (!isExit) {
Toast.makeText(this, "再按一次退出", Toast.LENGTH_SHORT).show();
isExit = true;
Timer timer = new Timer();
timer.schedule(new TimerTask() {
@Override
public void run() {
isExit = false;
}
}, 2 * 1000);
}
return super.onKeyDown(keyCode, event);
}