it光

学而时习之,温故而知新!

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)

可以把该Fragment的对象传过去,这样跳转

f.startActivityForResult(intent, requestCode);

这样就可以在 Fragment 的onActivityResult 接受结果了,网上也有很多解决方法,目测这是最金蛋的一个了,亲测可用.

阅读更多

扫码向博主提问

去开通我的Chat快问

itguangit

乐于助人,分享我一路走来的经验。
版权声明:欢迎转载,但请注明出处 https://blog.csdn.net/itguangit/article/details/52021579
文章标签: Fragment onActivity
个人分类: android的坑
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

不良信息举报

Android-Fragment 的 onActivityResult 收不到结果

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭