在片段之间快速切换时发出问题

时间:2011-12-21 12:35:07

标签: android android-fragments

在LinearLayout中我有一个FragmentContainer,下面是一个包含几个RadioButtons的RadioGroup。当检查更改时,我将用不同的片段替换容器中的当前片段。如果检查进行缓慢,切换就会发生。

现在考虑
RadioButtonA =>检查用FragmentA替换容器
RadioButtonB =>检查用FragmentB替换容器

现在容器有FragmentA
如果我改为RadioButtonA-> RadioButtonB,用FragmentB替换FragmentA
如果我从RadioButtonB-> RadioButtonA 切换,它应该瞬间将片段B替换为FragmentA

但我得到例外说法:
 java.lang.IllegalStateException:已添加片段:FragmentA

1 个答案:

答案 0 :(得分:0)

现在工作正常。问题是在更换片段后我正在设置过渡

fragmentTransaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE);

我假设当我切换到FragmentB时,trament(对于FragmentA)仍然会运行。

在转换完成之前,不会从backstack中删除FragmentA。此时如果尝试再次添加FragmentA,它会崩溃,因为FragmentA尚未被删除

所以不要设置任何过渡