下边两个问题,是在开发中碰到的一些关于Fragment的偶发性的问题,今天时间比较多,就在网上搜了一些解决方式:
1、关于Fragment(XXFragment) not attached to Activity 异常。出现该异常,是因为Fragment的还没有Attach到Activity时,调用了如getResource()等,需要上下文Content的函数。解决方法,就是等将调用的代码写在OnStart()中。网上还有几处这样的参考:http://stackoverflow.com/questions/10919240/fragment-myfragment-not-attached-to-activity  回答的主要是在调用
[java] view plain copy
getResources().getString(R.string.app_name);
之前增加一个判断isAdded(),两外说这个异常解决办法的有 http://stackoverflow.com/questions/6870325/android-compatibility-package-fragment-not-attached-to-activity
这个是针对另外一种情况下的解决方式。
2、在使用Fragment保存参数的时候,可能是因为需要保存的参数比较大或者比较多,这种情况下页会引起异常。比如代码
[java] view plain copy
Bundle b = new Bundle();
b.putParcelable("bitmap", bitmap2);
imageRecognitionFragment.setArguments(b);
设置好参数,并且添加hide(),add(),方法之后,需要commit(),来实现两个Fragment跳转的时候,这种情形下参数需要进行系统保存,但是这个时候你已经实现了跳转,系统参数却没有保存。此时就会报java.lang.IllegalStateException: Can not perform this action after onSaveInstanceState
异常。分析原因:你并不需要系统保存的参数,只要你自己设置的参数能够传递过去,在另外一个Fragment里能够顺利接受就行了,现在android里提供了另外一种形式的提交方式commitAllowingStateLoss(),从名字上就能看出,这种提交是允许状态值丢失的。到此问题得到完美解决,值的传递是你自己控制的。
这里也说一下另外一个问题,bitmap 也可以通过Bundle传递的,使用putParacelable就可以了

  

转载于:https://www.cnblogs.com/wikiki/p/7459343.html

开发中关于Fragment异常的两个问题相关推荐

  1. android开发中的ANR异常

    android开发中的ANR异常 参考文章: (1)android开发中的ANR异常 (2)https://www.cnblogs.com/yejiurui/archive/2012/11/08/27 ...

  2. android fragment 教程,Android app开发中的Fragment入门学习教程

    在Android3.0上开始引入了一个新概念叫Fragment.它有自己的布局文件,可以作为组件排布,也可以相互组合去实现不同的布局显示.使用Fragment可以重复利用代码,并且可以满足不同设备尺寸 ...

  3. android应用开发中收集的异常日志解决方法记录

    这里主要是列出开发中收集的一些错误日志,以及解决方案,仅供参考,也有待解决的问题 1, ListView 中出现java.lang.IndexOutOfBoundsException: Invalid ...

  4. 【我的C语言学习进阶之旅】介绍一下NDK开发中关于JNI函数的两种注册方式:静态注册和动态注册

    目录 一.要介绍本篇博客的原因 二.静态注册 2.1 实现原理 2.2 实现过程 2.3 弊端 2.4 示例 三.动态注册 3.1 实现原理 3.2 实现过程 3.3 优点 3.4 示例 一.要介绍本 ...

  5. android开发中遇到的异常及解决方法

    每次运行项目,可能因为粗心或者哪一行代码没有调用,会导致项目不能运行,出现异常. 以下就是我总结的各种异常,会一直更新. 1. Unable to find explicit activity cla ...

  6. Java 开发中常见的异常有哪些?

    1.空指针异常(NullPointException):当对象不存在,却又去调用对象的属性或方法时,就会出现该异常 2.数组越界异常(ArrayIndexOutOfBoundsException):当 ...

  7. Java基础学习系列--(七)彻底搞懂java中的【异常、线程】的使用

    第一章 异常 1.1 异常概念 异常,就是不正常的意思.在生活中:医生说,你的身体某个部位有异常,该部位和正常相比有点不同,该部位的功能将受影响.在程序中的意思就是: 异常 :指的是程序在执行过程中, ...

  8. 【狂云歌之unity_vr】VR开发中的优化

    [狂云歌之unity_vr]VR开发中的优化 前言 大概做了大半年的VR开发,HTCVive上与room scale和手柄控制器.激光相关的开发做过,gearvr使用oculus sdk开发做过,使用 ...

  9. iOS开发中内置浏览器

    iOS开发中浏览网页通常有两种选择: 一是启动Mobile Safari的应用进行浏览,或是利用UIWebView进行内置显示. 但两种都有各种的不足,启动Safari应用会导致当前应用的中断或者退出 ...

最新文章

  1. oracle中的rowid--伪列-删除表中的重复内容-实用
  2. PC上虚拟机中安装NW 7.02 ABAP试用版
  3. 喜报!良品铺子签约神策数据
  4. 为同一个元素绑定多个不同的事件,并指向相同的事件处理函数方法
  5. RxJava API使用示例
  6. python编程100例-Python3经典100例(①)
  7. larveral 直接拷贝安装_做一个能引导所有系统的安装盘
  8. 新手思考如何开发自己的软件
  9. 计算机网络投标书质量保证措施,计算机网络标书模板.doc
  10. java---抽奖小程序
  11. GNSS-SINEX文件格式简介
  12. 2018天池大数据-印象盐城:数创未来大数据竞赛经验分享
  13. usermod--修改用户账号信息命令
  14. ipmi管理工具 ipmitool
  15. idea 快速生成接口文档
  16. PyCharm for Mac (强大的Python IDE工具) v2021.3
  17. MATLAB仿真贝塞尔函数
  18. 实习日记——Day47
  19. 计算机打印机接口多少跟针,针式打印机 日常故障分析与维修实例
  20. css font-family字体总结表

热门文章

  1. 【STM32】SPI简介
  2. 如何制作印章_电子公章怎么制作
  3. 向 wmware workstation pro 的 MS-DOS 操作系统中导入文件(masm debug edit)(详细图解)
  4. 颜色分类—leetcode75
  5. vs2015+opencv3.4安装及问题整理
  6. (推荐)为什么要走嵌入式?
  7. pixhawk软件架构
  8. 教你如何区分描述统计学与推断统计学
  9. kali 设置中文字体
  10. HDU - 6598 Harmonious Army (最小割)