Je veux afficher une activity
à une autre d'animation de bas en haut en utilisant Intent
.
Donne-moi un exemple pour cela, comme ci-dessous
Intent i2 = new Intent(main.this, test.class);
startActivity(i2);
avec animation de bas en haut.
Définissez une animation dans res/anim/slide_in_up.xml:
<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:fromYDelta="100%p" Android:toYDelta="0%p"
Android:duration="@Android:integer/config_longAnimTime"/>
et un autre à res/anim/slide_out_up.xml:
<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:fromYDelta="0%p" Android:toYDelta="-100%p"
Android:duration="@Android:integer/config_longAnimTime"/>
Puis appliquez-les après pour appeler startActivity:
Intent i2 = new Intent(main.this, test.class);
startActivity(i2);
overridePendingTransition( R.anim.slide_in_up, R.anim.slide_out_up );
Il y a une introduction à l’animation Android ici qui peut vous aider.
Quand j'ai googlé une transition glissante et que j'ai atterri ici, la réponse de Mark est incomplète sans transition pour revenir à la même activité.
Finition en activité
@Override
public void finish() {
super.finish();
overridePendingTransition(R.anim.slide_from_top,R.anim.slide_in_top);
}
terminer()
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Lollipop) {
finishAfterTransition();
}else finish();
slide_from_top.xml
<translate xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:fromYDelta="-100%p" Android:toYDelta="0%p"
Android:duration="@Android:integer/config_shortAnimTime"/>
slide_in_top.xml
<translate xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:fromYDelta="0%p" Android:toYDelta="100%p"
Android:duration="@Android:integer/config_shortAnimTime"/>
Premièrement: animez la présentation de votre activité 1 , Deuxièmement: à la fin de cette année, commencez votre deuxième activité et animez son contenu
Utilisez TranslateAnimation (int fromX, int toX, int fromY, int toY);