java.lang.IllegalStateException: Fragment already added
问题描述
在DialogFragment中重复调用show(manager: FragmentManager?, tag: String?)导致崩溃,提示IllegalStateException: Fragment already added
并且manager?.findFragmentByTag(tag)找到的fragment是空,isAdded也是false
解决方案
方案一:
override fun show(manager: FragmentManager?, tag: String?) {try {//在每个add事务前增加一个remove事务,防止连续的addmanager?.beginTransaction()?.remove(this)?.commit()super.show(manager, tag)} catch (e: Exception) {//同一实例使用不同的tag会异常,这里捕获一下e.printStackTrace()}}
方案二:
override fun show(manager: FragmentManager?, tag: String?) {try {manager?.beginTransaction()?.commitAllowingStateLoss()manager?.executePendingTransactions()if (isAdded){return}super.show(manager, tag)}catch (e: Exception){e.printStackTrace()}}
总结
推荐方案二, 方案一在同一实例使用不同的tag会异常
java.lang.IllegalStateException: Fragment already added相关推荐
- Android DialogFragment 遇到 java.lang.IllegalStateException: Fragment already added: 的解决方法
Android DialogFragment 遇到 java.lang.IllegalStateException: Fragment already added: 的解决方法 参考文章: (1)An ...
- [Android Pro] java.lang.IllegalStateException: Fragment(XXFragment) not attached to Activity异常
[Android Pro] java.lang.IllegalStateException: Fragment(XXFragment) not attached to Activity异常 参考文章: ...
- viewpager2异常: java.lang.IllegalStateException: Fragment no longer exists for key f#1: unique id 8052
异常信息: java.lang.IllegalStateException: Fragment no longer exists for key f#1: unique id 805285bc-7a1 ...
- Android Fragment异常:java.lang.IllegalStateException: Fragment XXXFragment not attached to Activity
出现该异常,是因为Fragment的还没有Attach到Activity时,调用了如getResource()等需要上下文Context的函数.解决方法,就是等将调用的代码写在OnStart()中.
- ButterKnife与Fragment的爱恨情仇(java.lang.IllegalStateException: Bindings already cleared.)
业务场景:常规app开发 页面切换框.底下4个选项卡.切换 上面4个不同页面的切换.业务逻辑不再赘述. 我在BaseFragment里面使用了注解框架ButterKnife注册,代码如下: onDes ...
- Java.lang.IllegalStateException Activity has been destroyed
12-07 11:13:14.030 13836-13836/com.xxx.xxx.android E/error.out: 检测到严重错误,程序即将退出java.lang.RuntimeExcep ...
- java.lang.IllegalStateException: Failure saving state: active HomeFragment has cleared index: -1
异常信息 java.lang.IllegalStateException: Failure saving state: active HomeFragment{28d4dc6} has cleared ...
- AndroidKotlin笔记——TextView赋值出现java.lang.IllegalStateException: tv must not be null
前言 现在有很多Android开发的小伙伴使用Kotlin开发应用了,今天小编在使用Kotlin开发的时候遇到个问题,就是在TextView赋值时候出现了java.lang.IllegalStateE ...
- java.lang.IllegalStateException: No host
Logcat打印出的错误提示如下: java.lang.IllegalStateException: No host ...
- 记录一次gilde引起的异常:(java.lang.IllegalStateException: Cannot pool recycled bitmap)
遇到的log日志打印如下: 12-15 16:55:50.435 20360-20360/com.ysb E/AndroidRuntime: FATAL EXCEPTION: mainProcess: ...
最新文章
- 稀疏矩阵按列转置核心代码
- 同为 Java 开发:有了这些 Java 项目经历,面大厂稳了!
- mysql select表达式_MySQL数据库SELECT查询表达式解析
- TensorFlow基于minist数据集实现手写字识别实战的三个模型
- Distributed Transaction Coordinator 服务因 3221229584 (0xC0001010) 服务性错误而停止
- JavaScript 严格模式(use strict)
- ASP.NET MVC 的多国语系支持
- python 面向对象编程tcp_python 闯关之路三(面向对象与网络编程)
- 设计专业作品展示舞台,灵感源泉
- redis面试常问--缓存穿透
- 传智播客reactnative_传智播客黑马前端36期(2018年)
- ENVI遥感处理(9):遥感影像镶嵌和图像裁剪
- matlab 数组写入文件名,Matlab将数组写入.txt文件
- 怎么在线制作软件的logo
- kafka zookeeper docker容器互联
- 怎么查看本地IP地址
- ChatGPT 大行其道,带你走近 AIGC
- 学习java被虐千百遍
- PC操作系统使用技巧
- springboot POST 405 错误