2017-10-20 18 views
0

我想開始使用startActivityForResult另一個活動具有負面requestCode無法獲取導致活性onActivityResult帶有負requestcode

startActivityForResult(intent,-1); 

但正如我完成我的第二個活動,我沒有得到響應我第一次活動。然而,積極的請求代碼工作正常,第一個活動正在獲得預期的響應。 我見過的文檔沒有提及任何有關簽名請求代碼的內容。

在我的第二個活動:

Intent returnIntent = new Intent(); 
returnIntent.putExtra("resultObj",obj); 
getActivity().setResult(Activity.RESULT_OK,returnIntent); 
getActivity().finish(); 
+1

爲什麼你想使用負面的請求代碼?您是否閱讀過「Activity#startActivityForResult」文檔的 – szamani20

+0

? – pskink

+0

['Activity#startActivityForResult(Intent,int)'](http://developer.android.com/reference/android/app/Activity.html#startActivityForResult(android.content.Intent,%20int)) - > [ 'Activity#startActivityForResult(Intent,int,Bundle)'](https://developer.android.com/reference/android/app/Activity.html#startActivityForResult(android.content.Intent,%20int,%20android.os。束))。這就是解釋否定請求代碼的地方。 –

回答

0

您可以更改其他請求的代碼。例如:

startActivityForResult(intent,999); 
0

更改如下面的代碼,並嘗試:

Intent returnIntent = new Intent(); 
returnIntent.putExtra("resultObj",obj); 
getActivity().startActivityForResult(returnIntent,1); 
getActivity().finish(); 

得到這個對象另一個類像下面

ClassName model = (ClassName) getIntent().getSerializableExtra("resultObj"); 

而那類應該實現Serializable

class ClassName implements Serializable { 

} 

希望它會工作..

相關問題