【发布时间】:2015-02-06 09:39:35
【问题描述】:
我正在处理一个调用相机的片段。
startActivityForResult(intent, REQUEST_CAMERA);
问题是,如果我覆盖片段内的onActivityResult,它不会调用,
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
Log.d("test","result frag");
super.onActivityResult(requestCode, resultCode, data);
}
但只能在 Main Activity 中调用 onActivityResult
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
Log.d("test","main");
super.onActivityResult(requestCode, resultCode, data);
}
经过一番调查,通过调用 Main Activity 的onActivityResult 函数中的片段方法,有一些解决方案。但是我怎样才能用其他方法解决它呢?非常感谢。
【问题讨论】:
-
谢谢提醒,问题是我已经在fragment中使用了startActivityForResult(intent,111)而不是getActivity().startActivityForResult(intent,111),但是还是不能调用。
-
也检查其他答案。出于某种原因,有 11 个答案至少有一个支持。
-
是的,我在那篇文章中发现几乎所有使用 fragment.startActivityForResult apporach,我想找到任何其他解决方法。很抱歉,如果它与其他人重复。
-
重要 --> Fragment 是 Activity 的子节点,
标签: java android android-activity android-fragments callback