Android-Fragment的onActivity诡异Bug

1.经常会看见Activity嵌套Fragment中,从Fragment打开另一个Activity,

并重写Activity与Fragment的onActivityResult()方法时,发现该Fragment的onActivityResult()方法不执行,

而执行Activity的onActivityResult()方法.究其原因,就是打开另一个Activity的方式不对.

在Activity中,有activity.startActivityForResult(intent, requestCode);

在Fragment中,同样也有f.startActivityForResult(intent, requestCode);

也就是说 谁打开就调用谁的onActivityResult();

2.最近在Fragment中做一个图片获取的功能,也就是打开系统的图片检索功能 把选中的图片获取到.

但该功能是在主Activity的Fragment下,因为我们经常把主Activity的加载模式修改成SingleInstance,这时,

就会导致在Fragment打开图片检索的Activity就已经执行onActivityResult(),而系统的resultCode返回了默认的取消常量.

解决方案就是把加载模式还原成默认的.

时间: 2024-08-03 09:59:36

Android-Fragment的onActivity诡异Bug的相关文章

android下前端开发诡异bug记录&解决方法

1.border-radius有bug,围不住background 描述:设置了border-radius后,背景色依然会从圆角里冒出来 解决方法:在设置了border-radius的容器加上background-clip:padding-box;一定要把background样式提到background-clip样式前!!(被这个bug坑死了,花了大半天时间在近乎绝望的情况下找出了原因) 不断补充中…

Android实际开发中的bug总结与解决方法(一)

                                                                             Android实际开发中的bug总结与解决方法(一) Android开发中有很多bug,我们是完全可以在线下避免的,不要等到线上报的BUG的再去修复.下面是我在实际开发中遇到过的bug和解决方法. BUG 1: java.lang.RuntimeException: Unable to start activity ComponentInfo

Android Fragment 真正的完全解析(上)

转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/37970961 自从Fragment出现,曾经有段时间,感觉大家谈什么都能跟Fragment谈上关系,做什么都要问下Fragment能实现不~~~哈哈,是不是有点过~~~ 本篇博客力求为大家说明Fragment如何产生,什么是Fragment,Fragment生命周期,如何静态和动态的使用Fragment,Fragment回退栈,Fragment事务:以及Fragment的一些特

Android Fragment 的使用,一些你不可不知的注意事项

Fragment,俗称碎片,自 Android 3.0 开始被引进并大量使用.然而就是这样耳熟能详的一个东西,在开发中我们还是会遇见各种各样的问题,层出不穷.所以,是时候总结一波了. Fragment 简介 作为 Activity 界面的一部分,Fragment 的存在必须依附于 Activity,并且与 Activity 一样,拥有自己的生命周期,同时处理用户的交互动作.同一个 Activity 可以有一个或多个 Fragment 作为界面内容,并且可以动态添加.删除 Fragment,灵活控

【Android自学日记】【转】Android Fragment 真正的完全解析(下)

上篇博客中已经介绍了Fragment产生原因,以及一些基本的用法和各种API,如果你还不了解,请看:Android Fragment 真正的完全解析(上). 本篇将介绍上篇博客提到的:如何管理Fragment回退栈,Fragment如何与Activity交互,Fragment与Activity交互的最佳实践,没有视图的Fragment的用处,使用Fragment创建对话框,如何与ActionBar,MenuItem集成等~~ 1.管理Fragment回退栈 类似与Android系统为Activi

Android Studio添加包的BUG处理

在开发中,经常遇到Android studio不clean的话就不更新代码. 今天想添加一个包,却怎么也添加不进去,我的版本如下: 添加包怎么也添加不上去 不知道是不是此版本的BUG,我用的是目前最新版的,请知情人士告知. 解决办法:需要去SDK的路径中找到相关的包,然后手动引入,如下图: 找到该包后,按F2,然后复制名称,去Build.gradle中引入,如下: 引入后clean一下,然后就加进去了,删除也是在这里删除. 我认为这个方法虽然可行,但是真心麻烦,感觉应该是目前新版本的BUG,自从

android fragment 博客 学习记录

转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/37992017 上篇博客中已经介绍了Fragment产生原因,以及一些基本的用法和各种API,如果你还不了解,请看:Android Fragment 真正的完全解析(上). 本篇将介绍上篇博客提到的:如何管理Fragment回退栈,Fragment如何与Activity交互,Fragment与Activity交互的最佳实践,没有视图的Fragment的用处,使用Fragment创

Android Fragment应用实战,使用碎片向ActivityGroup说再见

转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/13171191 现在Fragment的应用真的是越来越广泛了,之前Android在3.0版本加入Fragment的时候,主要是为了解决Android Pad屏幕比较大,空间不能充分利用的问题,但现在即使只是在手机上,也有很多的场景可以运用到Fragment了,今天我们就来学习其中一个特别棒的应用技巧. 很多手机应用都会有一个非常类似的功能,即屏幕的下方显示一行Tab标签选项,点击不

[Android]Fragment源码分析(一) 构造

Fragment是Android3.0之后提供的api,被大家广泛所熟知的主要原因还是因为随即附带的ViewPager控件.虽然我并不喜欢用它,但是它确实是一个相对不错的控件.还是我的一贯作风,我将从源码上向大家展示什么是Fragment.我们先写一个简单的代码对Fragment有个直观的认识:(为了保证我们方便调试,我们可以直接使用V4提供的源码包) FragmentTransaction t = getSupportFragmentManager().beginTransaction();