sih*_*hrc 5 android android-fragments
我没有使用ViewPager,并且是我唯一拨打任何电话的地方Fragment交易是单击活动布局中导航栏上的按钮。
当我太快地切换到片段(如来回)时,会出现以下异常:
java.lang.IllegalStateException:没有活动
似乎是当我单击切换另一个Fragment而第一个尚未完全完成加载时。我正在使用FragmentActivity。
谁能对此有所了解?
我要切换Fragment的代码:
fragmentManager.beginTransaction()
.replace(R.id.container, old,
fragment.getClass().getSimpleName())
.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN).commit();
Run Code Online (Sandbox Code Playgroud)
编辑:取出过渡解决了问题,但我想知道是否有一种方法可以实现过渡。我的理论是,过渡会延迟片段的生命周期,并在启动另一个片段事务时使活动为空。
我今天遇到了同样的问题。原来我正在缓存我的片段(这是完全有效的),但我很快就删除/添加了它(当仍在动画时)
尝试检查:old.isRemoving()致电之前.replace(R.id.container, old)
true意味着它仍在使用中,重新添加它会触发问题。在这种情况下,您应该创建一个新的片段实例。
我的猜测是,我试图在片段仍在动画删除时重新添加片段,因此需要两个片段实例。
| 归档时间: |
|
| 查看次数: |
1493 次 |
| 最近记录: |