j'ai réussi à retirer un droit à la diapositive à gauche dans mon activité facilement en utilisant cette animation R.anim.anim_left_to_right
:overridePendingTransition: droit à glisser vers la gauche avec la profondeur dans l'activité
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:shareInterpolator="false">
<translate android:fromXDelta="100%"
android:toXDelta="0%"
android:fromYDelta="0%"
android:toYDelta="0%"
android:duration="300"/>
</set>
Dans Activité A, je l'emportaient sur la pendingTransition:
overridePendingTransition(R.anim.anim_left_to_right, 0);
dans Activité B, dans la méthode onBackPressed, je l'emportaient sur la pendingTransition comme ceci:
@Override
public void onBackPressed() {
super.onBackPressed();
overridePendingTransition(0, R.anim.anim_right_to_left);
}
Le R.anim.anim_right_to_left
ressemble à ceci:
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:shareInterpolator="false">
<translate
android:fromXDelta="0%" android:toXDelta="100%"
android:fromYDelta="0%" android:toYDelta="0%"
android:duration="300" />
</set>
Le problème avec ce type d'animation est que l'animation entre l'activité A et B est très plat - Activité B roule littéralement sur l'activité A et il n'y a la profondeur de l'activité. Je veux atteindre un certain type de profondeur lorsque l'activité est en transition, où l'activité A en cours passera en arrière-plan et l'activité B glissera au-dessus à mesure qu'elle évolue. Lorsque vous quittez l'activité B, l'activité B devrait glisser vers la gauche et l'activité A passer à la taille normale.
Une vidéo de Google montre en fait cela sur ViewPager mais je WNAT pour faire un effet similaire pour * Activité **:
http://developer.android.com/training/animation/anim_page_transformer_depth.mp4
J'ai essayé de mettre cela en Activité A:
overridePendingTransition(R.anim.anim_left_to_right, R.anim.anim_scale_out);
Et cela dans Activité B:
overridePendingTransition(R.anim.anim_scale_in, R.anim.anim_right_to_left);
R.anim.anim_scale_out
:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<scale android:fromXScale="1.0"
android:fromYScale="1.0"
android:toXScale="0.8"
android:toYScale="0.8"
android:duration="300"
android:fillBefore="false" />
</set>
R.anim.anim_scale_in
:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<scale android:fromXScale="0.8"
android:fromYScale="0.8"
android:toXScale="1"
android:toYScale="1"
android:duration="300"
android:fillBefore="false" />
</set>
encore l'animation ne me donne pas la profondeur de l'activité. Lorsque vous passez de l'activité A à l'activité B, j'ai besoin de réduire l'activité A et de faire glisser l'activité B de droite à gauche. Lorsque je vais de l'activité B à A, je veux que l'activité B glisse de gauche à droite et que l'activité A soit agrandie.
vous pouvez utiliser la classe Transition pour la transition d'activité mais il est ajouté dans API 19 et également d'autres transition comme Fade, Explode et Slide mais ils sont ajoutés dans API 21 vérifier ce lien [link] (http: // xmodulo. com/activité-transition-animations-android.html) ce n'est peut-être pas la solution que vous recherchez. –
Ce n'est malheureusement pas la réponse que je cherche. Mon application cible jusqu'à 16 api. Je ne comprends pas pourquoi cet effet est si difficile à faire parce qu'il est utilisé dans beaucoup d'applications. Si vous regardez l'application Facebook, vous pouvez voir cet effet si vous passez d'une activité à une autre. – Simon