1. 程式人生 > >Android下兩次返回鍵完全退出程式以及提示對話方塊的實現

Android下兩次返回鍵完全退出程式以及提示對話方塊的實現

我們看到許多介面友好的應用,在退出程式這一步也做得很人性化,比如按兩下返回鍵退出程式,第一次按了返回鍵的時候,提示“再按一次返回鍵就退出程式”,其實在自己的程式裡面,也可以這樣做。
	private long exitTime = 0; 
	@Override 
	public boolean onKeyDown(int keyCode, KeyEvent event) { 
		if(keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_DOWN){ 
			if((System.currentTimeMillis()-exitTime) > 2000){ 
				Toast.makeText(getApplicationContext(), "再按一次退出程式", Toast.LENGTH_SHORT).show(); 
				exitTime = System.currentTimeMillis(); 
			} else { 
				finish(); 
				System.exit(0); 
			} 
			return true; 
		} 
		return super.onKeyDown(keyCode, event); 
	}
在MainActivity中加上以上程式碼:onKeyDown響應按鍵訊息,keyCode是按鍵碼,event是按鍵訊息,封裝了本次按鍵的動作;exitTime儲存上一次按返回鍵的時間(long),如果這次按返回鍵的時間距上次的時間小於2S(long的2000),就退出,finish()是將activity完成,System.exit(0)是退出程式,主要要保證所有的activity都退出了,才呼叫exit,不然會有後臺程式還在繼續執行。