我将片段替换为:
Fragment fragment = new TheFragment();
fragment.setAllowEnterTransitionOverlap(false);
getSupportFragmentManager().beginTransaction().setCustomAnimations(R.anim.fade_in, R.anim.fade_out).replace(R.id.LayoutContent, fragment).commit();
但是输入退出动画同时播放。
如何在播放新片段进入动画之前等待退出动画完成?
答案 0 :(得分:1)
我知道这已经很晚了,但我想回答其他人有同样的问题。
fragment.setAllowEnterTransitionOverlap(false);
fragment.setAllowReturnTransitionOverlap(false);
仅适用于内容转换 - 直接在片段处设置转换。
enteringfragment.setEnterTransition(new YourTransition())
exitingfragment.setExitTransition(new YourTransition())
它不会影响setCustomAnimations()
答案 1 :(得分:0)
可能有点脏,但我只是通过定义
解决了这个问题输入动画的机器人:开始偏移
,其值与
相同机器人:持续时间
退出动画。另外,我使用变量中的时间来确保它在两个动画中始终是相同的值,我只需要在一个地方更改它。
答案 2 :(得分:0)
你不需要这样做。 只需使用
setAllowEnterTransitionOverlap(false);
setAllowExitTransitionOverlap(false);
两个片段都有效。