经常会看见Activity嵌套Fragment中,从Fragment打开另一个Activity,
并重写Activity与Fragment的onActivityResult()方法时,发现该Fragment的onActivityResult()方法不执行,
而执行Activity的onActivityResult()方法.究其原因,就是打开另一个Activity的方式不对.
在Activity中,有activity.startActivityForResult(intent, requestCode);
在Fragment中,同样也有f.startActivityForResult(intent, requestCode);
也就是说 谁打开就调用谁的onActivityResult();
–
今天在做一个从相册选择图片作为头像的功能,遇到了这个问题.
我的解决方法很简单:在Fragment 跳转相册或者相机的时候,不要用
activity.startActivityForResult(intent, requestCode)
f.startActivityForResult(intent, requestCode);