Fragment.setAllowEnterTransitionOverlap(假);不起作用(进入和退出动画重叠)

时间:2015-01-23 11:29:55

标签: android animation android-fragments fragment fragmenttransaction

我将片段替换为:

Fragment fragment = new TheFragment();
fragment.setAllowEnterTransitionOverlap(false);

getSupportFragmentManager().beginTransaction().setCustomAnimations(R.anim.fade_in, R.anim.fade_out).replace(R.id.LayoutContent, fragment).commit();

但是输入退出动画同时播放。

如何在播放新片段进入动画之前等待退出动画完成?

3 个答案:

答案 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);

两个片段都有效。