overridePendingTransition在Android中不起作用

时间:2012-05-30 20:30:24

标签: android animation

以下代码对我不起作用。

finish();
overridePendingTransition(R.anim.slide_up,R.anim.slide_up);
startActivity(intent);
overridePendingTransition(R.anim.slide_up,R.anim.slide_up);

和动画的XML是

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate android:fromXDelta="50%p" android:toXDelta="-50"
        android:duration="@android:integer/config_mediumAnimTime"/>
<alpha android:fromAlpha="0.0" android:toAlpha="1.0"
        android:duration="@android:integer/config_mediumAnimTime" />
</set>

我在网上搜索,看到Stack Overflow中的所有线程,但无法解决这个问题。

4 个答案:

答案 0 :(得分:17)

我用以下方式解决了这个问题。

我删除了

overridePendingTransition(R.anim.slide_up,R.anim.slide_up);

从上面的代码中将其放在onPause()中,它就像魅力一样。

答案 1 :(得分:0)

有时手机上禁用动画。要检查转到设置&gt;显示&gt;动画&gt;允许“所有动画”。这将允许overridePendingTransition在被禁用时正常工作。

答案 2 :(得分:0)

如果激活USB调试模式,它可以禁用转换效果。 输入开发人员选项(激活调试模式的位置),找到用户的界面部分,检查动画的过渡比例是否禁用了动画。如果是这样,请将其设置为.5x。完成!

答案 3 :(得分:-1)

在finish()之前尝试startActivity