4

J'utilise overridePendingTransition pour définir ma propre transition d'activité. Tout fonctionne bien sauf que je ne peux pas changer à la durée de l'animation, il est ignoré.La durée de overridePendingTransition est ignorée

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"/> 

La durée est fixée à 2000 ms, mais l'animation est encore juste une fraction de seconde longue. Même le changer à une valeur extrême comme 10000 ne fait rien.

Si je modifie les animations dans les options du développeur dans les paramètres, la durée de l'animation correspond aux paramètres donnés.

code Java pour référence:

MainActivity.java

public void games(View view){ 

    startActivity(new Intent(MainActivity.this, GamesActivity.class)); 
    overridePendingTransition(R.anim.slide_up, R.anim.stay); 


} 

Toute personne qui a une idée?

Répondre

0

Cela fait longtemps que vous l'avez demandé mais je viens de l'expérimenter.

Essayez de faire une construction propre. Cela l'a arrangé pour moi. On dirait que l'exécution instantanée fait que les animations ne soient pas mises à jour à chaque exécution.