現在有許多APP非常人性化的會為使用者著想,
雙擊關閉程式就是怕使用者不小心按到返回建就退出APP了,
今天要分享的就是利用目前時間來判斷的雙擊關閉程式,
例如我設定2秒,
APP就會判斷使用者是否在2秒內連續按下兩下返回鍵,
進而關閉APP退出。
// Step01-設定目前時間變數(使用long是因為System.currentTimeMillis()方法的型態是long):
private long timeSave = 0;
@Override
public boolean onKeyDown(int keyCode, KeyEvent event){
// Step02-判斷是否按下按鍵,並且確認該按鍵是否為返回鍵:
if(keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_DOWN){
// Step03-判斷目前時間與上次按下返回鍵時間是否間隔2000毫秒(2秒):
if((System.currentTimeMillis()-timeSave) > 2000){
Toast.makeText(this, "再按一次退出!!", Toast.LENGTH_SHORT).show();
// Step04-紀錄第一次案返回鍵的時間:
timeSave = System.currentTimeMillis();
}
else {
// Step05-結束Activity與關閉APP:
finish();
System.exit(0);
}
return true;
}
return super.onKeyDown(keyCode, event);
}