近期在開發android項目時, Activity1使用startactivityforresult方法跳轉到Activity2,可是點擊back鍵時,報錯。 java
解釋: android
當不知足觸發條件就按返回鍵的時候,就要對此進行檢測。尤爲是當前Activity須要往前一個Activity傳送消息時。即Activity1跳轉到Activity2若是採用的是startActivityForResult這種方式,若是不重寫返回鍵,程序不知道要返回給Activity1什麼內容就會報錯。所以,必須對Activity2的返回按鍵重寫,重寫onBackPressed(): ide
因此在Activity2中,重寫onBackPressed()方法。 this
@Override public void onBackPressed() { //數據是使用Intent返回 Intent intent = new Intent(); //把返回數據存入Intent intent.putExtra(BACK_CODE, BACK_CODE_NO); //設置返回數據 TradeQuoteActivity.this.setResult(RESULT_OK, intent); //關閉Activity TradeQuoteActivity.this.finish(); }