位置: 编程技术 - 正文

Fragment里onActivityResult()无回调的问题

编辑:rootadmin

推荐整理分享Fragment里onActivityResult()无回调的问题,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

最近工作,接手了项目,测试发现有一个bug,就是在Fragment中使用startActivityForResult(Intent intent,int requestcode) 方法调用其他activity,重写onActivityforResult方法,但是onActivityforResult并没有被调用。

这个问题的解决思路就是两个方面。

先从onActivityforResult入手,在方法第一句打印log,发现没有被执行,说明问题发生在这之前。

再从startActivityForResult入手,调用的Activity正确被调用,并且一直执行到setResult方法,查看responseCode也没有问题,说明不是被调用的Activity的问题。

那么问题就应该发生在startActivityForResult上了。

这是原来错误的写法,查看源码,fragment的getActivity方法返回了一个FragmentActivity的对象;

此时调用的是FragmentActivity的startActivityForResult方法。

问题就发生在这里。

正确的写法是直接在Fragment中使用Fragment的startActivityForResult方法。

Fragment里onActivityResult()无回调的问题

修改后正常调用了onActivityforResult。

查看Fragment.startActivityForResult()方法,源码如下:

也就是说在fragment中的调用顺序是:

1.Fragment.startActivityForResult()

2.FragmentActivity.startActivityFormFragment()

3.Activity.startActivityForResult()

而如果使用了getActivity()的调用顺序是:

1.FragmentAcitvity.startActivityForResult()

2.Activity.startActivityForResult()

这就是二者的区别,导致了onActivityResult()不能调用。

版权声明:本文为博主原创文章,未经博主允许不得转载。

[置顶] Android 动画实现-原来如此简单 Android动画相关基本知识可以参考:Android动画初步、Android动画TweenAnimation、Android动画FrameAnimation、Android属性动画(PropertyAnimation)、Android动画PropertyAnimat

[置顶] Android横向滑动导航菜单 1.效果图:2.项目地址:

android studio,gradle的问题 这一周在三个地方都分别安装了不同版本的androidstudio,导入相同的项目,都发生了build失败的问题。其中在A地修改的方法是降低了sdk版本;在B地采用的

标签: Fragment里onActivityResult()无回调的问题

本文链接地址:https://www.jiuchutong.com/biancheng/374347.html 转载请保留说明!

上一篇:java4Android(15)处理流的使用示例、装饰者设计模式、节点流和处理流的关系

下一篇:[置顶] Android 动画实现-原来如此简单([置顶]星陨计划)

  • 税负税负率与税率区别?
  • 小规模纳税人能开专票吗
  • 一般户付款能开增值税票吗
  • 什么是清算机构的资产
  • 公司购买的电脑怎么做账
  • 代开增值税票普票专票税点一样吗
  • 机票抵进项税税率
  • 进口环节增值税是中央税还是地方税
  • 新成立的公司银行存款如何入账
  • 小规模转为一般纳税人最新规定
  • 代扣代缴企业所得税10%
  • 无票收入如何做会计凭证
  • 公司费用种类
  • 利润表本月金额指的是什么
  • 专用发票和普通发票的区别在哪里
  • 废旧物资缴纳增值税政策
  • 预收账款预提费用
  • 筹建期间开办费账务处理
  • 设计服务交文化建设税吗
  • 联想笔记本e49系列哪款好
  • 增值税附加怎么入账
  • 参保各险种人数统计
  • 各种linux
  • 戛纳,法国 (© Manjik Photography/Alamy)
  • 补贴收入什么时候到账
  • laravel debug rce
  • JavaScript includes() 方法
  • php遍历对象
  • 不想预缴所得税能不能提前暂估费用,会计分录
  • token验证器
  • vue的路由守卫有哪些钩子函数
  • cvpr2020目标跟踪
  • 蓝桥杯2021出结果
  • 销项税太多
  • 金融企业往来支出是一级科目吗
  • 查账征收利润50万交多少税
  • 买资产买负债
  • sobel算子 opencv
  • 桥接模式例子
  • 工资薪金个人所得税在哪里申报
  • 购买设备配件
  • 销售清单需要盖什么章子
  • 防伪码显示查询次数和时间
  • 固定资产支付的保险费计入成本吗
  • 子公司的注册资金需要母公司股东出吗?
  • 业务招待费的扣除标准60%什么意思
  • 电子设备折旧残值率
  • 研发支出放在报表哪里
  • 资金账簿的计税依据
  • 总公司费用能分摊到分公司吗
  • 应税劳务会计分录
  • 居民企业与非居民企业的纳税差异
  • 报销如果没有发票怎么补救
  • 应付票据在资产负债表怎么填列
  • 餐饮行业的原材料怎么做账
  • 商品销售折让怎么计算
  • sql中出现将截断字符串或二进制
  • mysql 临时表
  • win7安装windows无法安装所需的文件请确保
  • mscorsvw.exe是什么
  • macosmajove
  • centos 6.0
  • skynetave.exe - skynetave是什么进程 有什么用
  • mce文件是什么软件
  • win8系统自带应用都打不开了怎么办
  • win7蓝屏0x000000d1
  • ugui scrollview
  • 图文详解地理图册电子版
  • js经典实例
  • js 文件缓存
  • css旋转木马
  • 数组添加数组
  • JQUERY的AJAX请求缓存里的数据问题处理
  • javascript获取数据类型
  • 江苏税务网上办税服务厅服务提醒
  • 建筑行业增值税税收优惠政策
  • 手机微信怎么预约
  • 出口退税账户标识是否怎么选
  • 财税公众号名称大全
  • 车船使用税减免法律规定
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设