studio - ¿Cómo dar animación de arriba a abajo en Android?
animaciones xml android (4)
Acabo de implementarlo con dos archivos xml más que tienen como
deslice hacia arriba, 100 a 0 y 0 a -100
deslice hacia abajo -100 a 0 y 0 a 100
funciona perfecto
Soy capaz de dar animación de abajo a arriba cuando voy a la siguiente actividad, pero ahora cuando presioné hacia atrás estoy usando el mismo código para dar animación de arriba a abajo, pero siempre va de abajo a arriba, así que mi pregunta es cómo dar animación. ¿De arriba a abajo cuando presioné el botón Atrás en el dispositivo Android?
Por favor encuentre mi código a continuación.
Lo uso durante la transición de una Activity
a otra usando una Intent
.
overridePendingTransition( R.anim.slide_in_up, R.anim.slide_out_up );
y xml es: 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"/>
y slide_out_up.xml es
<?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"/>
Puede anular el comportamiento de la presión del botón Atrás y configurar la animación apropiada que desee, de esta forma:
@Override
public void onBackPressed() {
finish();
overridePendingTransition(R.anim.enter_anim, R.anim.exit_anim);
}
Cambie las animaciones en overridePendingTransition
para que se ajuste a las que desea.
Simplemente cambie -100 a 100 (quitar menos) en slide_out_up.xml
@Override
public void onBackPressed() {
finish();
overridePendingTransition(R.anim.enter_anim, R.anim.exit_anim);
}
Trabajó en mi tableta 4.0.3.
slide_out_up.xml :
<set xmlns:android="http://schemas.android.com/apk/res/android" >
<translate
android:duration="@android:integer/config_mediumAnimTime"
android:fromYDelta="0%p"
android:toYDelta="-100%p" />
</set>
slide_in_up: xml :
<set xmlns:android="http://schemas.android.com/apk/res/android" >
<translate
android:duration="@android:integer/config_mediumAnimTime"
android:fromYDelta="-100%p"
android:toYDelta="0%p" />
</set>
style.xml :
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="DialogAnimationOutUpInUp">
<item name="android:windowEnterAnimation">@anim/slide_in_up</item>
<item name="android:windowExitAnimation">@anim/slide_out_up</item>
</style>
</resources>