我有一个使用以下方法调用另一个Activity的片段:
ProductEditionMaintenanceActivity.class);
Bundle extras = new Bundle();
extras.putString("productCode", productCode);
extras.putInt("productEditionID", 0);
intent.putExtras(extras);
getActivity().startActivityForResult(intent, 1);
从活动中返回:
Intent resultIntent = new Intent();
setResult(Activity.RESULT_OK, resultIntent);
finish();
我尝试在片段中使用以下内容
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data)
{
//Do something
}
但是,我猜测创建的意图传递了片段的父Activity的引用,因此片段上的onActivityResult不会被调用。 如果是这种情况,我需要做什么才能使片段从被调用者活动中获得结果?
答案 0 :(得分:13)
只要从主机活动调用onActivityResult
,就会在主机活动onActivityResult
之后调用片段super.onActivityResult
。有关详细信息,请参阅https://stackoverflow.com/a/6147919/552902