Activity中包含Fragment时startActivityForResult()

 我来答
户如乐9318
2022-07-23 · TA获得超过6657个赞
知道小有建树答主
回答量:2559
采纳率:100%
帮助的人:139万
展开全部

问题 :当一个 Activity 中包含一个 Fragment 时我们使用 startActivityForResult() 方法启动一个 Activity ,待这个被启动的 Activity 设置了一个返回值然后被销毁,如何在Activity和Fragment中获得这个返回值呢?

分析 :启动 Activity 时,我们一般会设置一个 requestCode 以便在开启了多个具有返回值的 Activity 时进行识别以做出不同的响应对策。但使用不同的启动方式,在 Activity 和 Fragment 中拦截到的结果不同,主要有以下几种情况:

注意 :对于3来说,如果在 Activity 的 onActivityResult() 方法中没有调用 super.onActivityResult() 方法,那么在 Fragment 中不能获取任何数据,在 Activity中 可以获得数据但是无法根据 requestCode 去识别,传入的是一个6位的 requestCode

总结

参考

相关资料

Demo

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式