用戶退出應用前給出一個提示是頗有必要的,由於多是用戶並不真的想退出,而只是一不當心按下了返回鍵,大部分應用的作法是在應用退出去前給出一個Dialog,我以爲這樣不太友好,用戶還得移動手指去按dialog中的按鈕。我的以爲「再按一次返回鍵退出程序」是best practice,實現也很簡單,直接上代碼:ide
1 private long exitTime = 0; 2 3 @Override 4 public boolean onKeyDown(int keyCode, KeyEvent event) { 5 if(keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_DOWN){ 6 if((System.currentTimeMillis()-exitTime) > 2000){ 7 Toast.makeText(getApplicationContext(), "再按一次退出程序", Toast.LENGTH_SHORT).show(); 8 exitTime = System.currentTimeMillis(); 9 } else { 10 finish(); 11 System.exit(0); 12 } 13 return true; 14 } 15 return super.onKeyDown(keyCode, event); 16 }