以编程方式添加 3 级嵌套片段时,我遇到了许多崩溃问题。目前,我有一个Activity,它通过它的fragmentManager加载Fragment A,然后通过A的childFragmentManager加载Fragment B,然后从B的childFragmentManager加载Fragment C。
片段最初加载良好。但问题是当碎片被破坏然后重新创建时。你会认为当 Fragment B 被破坏时,Fragment C 也会被破坏。但看起来 Fragment C 被悬空了。
现在,Fragment B 通过 Fragment A 中的 ViewPager 加载。当我从一个页面滑动到另一个页面时,我偶尔会收到以下错误:
java.lang.IllegalStateException: Fragement no longer exists for key android:target_state: index 1
如果我从等式中删除片段 C,错误就会消失。如果我将所有片段加载到其父片段管理器(而不是 childFragmentManager)中,它也不会崩溃