我正在使用overridePendingTransition来设置我自己的活动转换。一切正常,除了我不能改变动画的持续时间,它被忽略。
slide_down.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/accelerate_decelerate_interpolator">
<translate
android:duration="2000"
android:fromYDelta="0"
android:toYDelta="100%p"
android:zAdjustment="top"/>
</set>
stay.xml
<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="2000"
android:fromYDelta="0%p"
android:toYDelta="0%p"
android:zAdjustment="top"/>
持续时间设置为2000毫秒,但动画仍然只是一秒的一小部分。即使将其改为像10000这样的极值也无济于事。
如果我在设置中更改了开发者选项中的动画,则动画持续时间对应于给定的设置。
Java代码供参考:
MainActivity.java
public void games(View view){
startActivity(new Intent(MainActivity.this, GamesActivity.class));
overridePendingTransition(R.anim.slide_up, R.anim.stay);
}
有想法的人吗?
答案 0 :(得分:1)
自从你问这个问题已经很久了,但我刚刚经历过这个。
尝试进行干净的构建。这为我解决了这个问题。看起来像“立即运行”会导致动画在每次运行时都不会更新。