あちこち検索したところ、同様の投稿がありますが、解決策が見つかりません!
私の状況では、 を保持するアクティビティ A がありfragment、そこからいくつかの値を に返すfragment新しい B を開始したいと考えています。Activityfragment
上でfragment
startActivityForResult(mapIntent, ConstantsUtils.TOMAP_REQUEST_CODE);
Bで、Activityデータを返す
Intent returnIntent = new Intent();
returnIntent.putExtra(SerializationConstants.isSearchSaved, mAbItemsShown.ordinal());
setResult (ConstantsUtils.SUCCESS_RETURN_CODE, returnIntent);
finish();
フラグメントについて
@Override
public void onActivityResult(int requestCode, int resultCode, Intent intent) {
super.onActivityResult(requestCode, resultCode, intent);
switch (requestCode) {
case ConstantsUtils.TOMAP_REQUEST_CODE:
if (resultCode == ConstantsUtils.SUCCESS_RETURN_CODE) {
//do some stuff
}
}
}
onActivityResultfromfragmentは正常に呼び出され、権利はありますrequestCodeがresultCode常に 0 であり、インテントは常にnullです。
Aの下には他のonActivityResult実装はありません。Activity
実際、私もwith
activityから始めてA
に実装しようとしましたが、同じことが起こります。fragmentgetActivity().startActivityForResult(mapIntent, ConstantsUtils.TOMAP_REQUEST_CODE);onActivityResultActivityrequestCoderesultCodeintent
私は を使用してSherlock Action Barいるので、私fragmentはを使用しているので、SherlockListFragmentを使用していsupport library (r18)ます。
手伝って頂けますか?ありがとう