java.lang.IllegalStateException: No activity
来源:互联网 发布:grub windows引导丢失 编辑:程序博客网 时间:2024/05/26 12:54
出现场景
第一次启动程序可以正常运行,随便切换tab也不会有问题,第二次必崩
引起BUG的原因是当fragment移动到分离状态的时候,会重置内部状态,但是并没有重置子类管理器(这是类库当前版本的错误),这会让fragment复位之后使它和activity不连接导致一个exception
解决办法是
添加 下面的代码对于每一个fragment在onDetach()方法里
public void onDetach() {
super.onDetach();
try {
Field childFragmentManager = Fragment.class.getDeclaredField("mChildFragmentManager");
childFragmentManager.setAccessible(true);
childFragmentManager.set(this, null);
} catch (NoSuchFieldException e) {
throw new RuntimeException(e);
} catch (IllegalAccessException e) {
throw new RuntimeException(e);
}
}
super.onDetach();
try {
Field childFragmentManager = Fragment.class.getDeclaredField("mChildFragmentManager");
childFragmentManager.setAccessible(true);
childFragmentManager.set(this, null);
} catch (NoSuchFieldException e) {
throw new RuntimeException(e);
} catch (IllegalAccessException e) {
throw new RuntimeException(e);
}
}
0 0
- java.lang.IllegalStateException: No activity
- java.lang.IllegalStateException: No activity
- java.lang.IllegalStateException: No activity
- java.lang.IllegalStateException: No activity
- java.lang.IllegalStateException: No activity
- java.lang.IllegalStateException: No activity
- java.lang.IllegalStateException: No activity
- java.lang.IllegalStateException: No activity
- android Java.lang.IllegalStateException: No activity 解决方法
- 单例 fragment getChildFragmentManager java.lang.IllegalStateException: No activity
- java.lang.IllegalStateException: No host
- java.lang.IllegalStateException: No host
- java.lang.IllegalStateException:No host
- fragment跳转到Activity的错误,java.lang.IllegalStateException: No activity
- java.lang.IllegalStateException: No match found错误
- java.lang.IllegalStateException: No wrapped connection.
- java.lang.IllegalStateException: No output folder
- ERROR:java.lang.IllegalStateException: No output folder
- #笔记#圣思园 JavaWeb 第29讲——Servlet
- DNS解析过程详解
- 浅谈php的缓存机制之redis
- OC调用Swift
- Ext JS isField为空或不是对象问题的解决
- java.lang.IllegalStateException: No activity
- java的序列化和反序列化
- 初碰linux
- Apache移植到ARM
- AngularJS 日期格式化
- linux服务器磁盘扩容的方法
- ISCSI报错iscsiadm: Could not stat
- CEdit添加右键菜单, ClistCtrl接收文件拖拽
- 双指针的两种用法