天天看点

Android-Fragment 的 onActivityResult 收不到结果

经常会看见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);      

继续阅读