Pat*_*nan 16 java android android-fragments
我的Android应用程序管理多个片段.我看到该字段中有大量崩溃,但是包含此日志行:
java.lang.IllegalStateException:失败保存状态:active XxxFragment {81e598 id = 0x7f0b0069 tag_yyy}已清除索引:-1
在Stack Overflow中搜索答案毫无结果; 我似乎有很多公司想知道这个例外究竟意味着什么.深入研究异常跟踪和Android源代码,我可以看到异常来自我的主Activity保存其状态(FragmentActivity.onSaveInstanceState),并且各个Fragments正被写入Parcelable.每个Fragment都有一个索引(称为mIndex),它必须是非负的,但是从代码中可以清楚地知道为什么必须是这种情况,因为mIndex永远不会在该函数中再次使用.
我不知道Fragment如何进入这种状态,或者我能做些什么.我无法在自己的测试环境中重现错误.任何人都可以阐明如何避免和/或处理此异常?
java.lang.IllegalStateException:失败保存状态:active已清除片段中的索引
我将编辑我以前的评论,并将其作为一个实际的答案.setRetainInstance(true)是一只红鲱鱼.至少在我的情况下.从这里开始:http://www.localwisdom.com/blog/2013/03/android-error-java-lang-illegalstateexception-failure-saving-state-active-fragmentname/
"你很可能尝试执行片段事务,而你没有引用正确的片段实例"
当我读到这一切对我来说都是有意义的.我是做2米错用碎片的东西.
(希望这会有所帮助.仅仅发表评论太长了.)
| 归档时间: |
|
| 查看次数: |
6402 次 |
| 最近记录: |