2009-12-18 133 views
2

由於某些原因,當我使用該調用時,結果總是返回爲0.我所做的只是彈出選擇框,然後一旦進行選擇,用戶就會點擊後退按鈕。有誰知道我可以做什麼錯誤?Android:startActivityForResult總是得到0的resultCode?

調用的Activity:

Intent i = new Intent(this, Selection.class); 
Log.d("Front-End", "Launching Activity"); 
startActivityForResult(i, SELECTION); 

調用活動:

bundle.putStringArray("selections", selected_array); 
Intent resultIntent = new Intent(); 
resultIntent.putExtras(bundle); 
setResult(RESULT_OK, resultIntent); 
finish(); 

有什麼建議?如果我包括完成()呼叫,它給了我以下內容:

W/ActivityManager(1030): Duplicate finish request for HistoryRecord{44802c90 com.android.TVitter/.Selection} 

回答

3

好吧,別對我火焰。我花了兩個小時來調試:(只是寫下來讓其他人不會犯這個愚蠢的錯誤,我必須把一個「OK」按鈕,然後處理這個事件,而不是讓用戶按下「返回」按鈕這是一個顯而易見的事情,但由於某種原因,我錯過了它...

1

如果您想要按下後退按鈕時從活動返回一些特定數據,您也可以實施Activity.onBackPressed()。只有2.0可用。