4

Я использую overridePendingTransition для установки моего собственного перехода активности. Все работает отлично, за исключением того, что я не могу изменить продолжительность анимации, она игнорируется.overridePendingTransition duration игнорируется

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

Прошло много времени с тех пор, как вы спросили об этом, но я просто испытал это.

Попробуйте сделать чистую сборку. Это исправило это для меня. Похоже, Instant Run заставляет анимацию не обновляться при каждом запуске.