10
嗨,我在調用startActivityForResult()並試圖在onAcvityResult()方法中處理結果。但是,意圖數據爲空,結果爲RESULT_CANCELED。我不知道爲什麼。在活動完成後,onActivityResult()的Intent數據爲null
我與創建活動:在活動類
startActivityForResult(new Intent(this, Class.class),LIST_RESULT);
然後
@Override
public void onBackPressed() {
super.onBackPressed();
Intent data = new Intent();
Bundle bundle = new Bundle();
bundle.putParcelable("name", la);
data.putExtras(bundle);
if (getParent() == null) {
setResult(Activity.RESULT_OK, data);
} else {
getParent().setResult(Activity.RESULT_OK, data);
}
//finish();
}
完成()沒有任何影響。事實上,我在logcat中得到警告,重複結束請求HistoryRecord
而且我處理結果:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
switch(requestCode) {
case(LIST_RESULT):
if(resultCode == Activity.RESULT_OK) {
previousList = data.getExtras();
}
break;
}
}
數據爲空和發送resultCode是Action.RESULT_CANCELED。
任何想法,爲什麼我沒有得到任何通過?在我設置和閱讀它之間有什麼改變嗎? mParent在返回結果的活動中也爲null。
亞歷
真的那麼容易! :(非常感謝你的提示。) – Alex 2011-06-12 16:07:30
Nice call there,William! – 2012-10-17 12:09:18
working for me,thanks。 – Goot 2012-11-10 16:33:27