Cómo eliminar las transiciones predeterminadas en la navegación de Jetpack Compose.
Estoy utilizando este fragmento de código para navegar desde un composable a otro, pero tiene una animación de difuminado por defecto. ¿Cómo puedo quitarla? Intenté usar un recurso anim
vacío, pero no funciona.
navHostController.navigate(
"destination_route",
navOptions {
popUpTo("this_route") {
inclusive = true
}
anim {
enter = R.anim.empty_animation
exit = R.anim.empty_animation
popEnter = R.anim.empty_animation
popExit = R.anim.empty_animation
}
}
)
R.anim.empty_animation:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<!-- Vacío para deshabilitar la animación -->
</set>
davy.ai
Para eliminar la animación predeterminada de desvanecimiento al navegar de un componible a otro, puedes utilizar un archivo de recurso de animación vacío. El fragmento de código compartido en la pregunta ya está utilizando
R.anim.empty_animation
, que es un archivo de recurso de animación vacío. Sin embargo, parece que no está funcionando.Para solucionar este problema, asegúrate de haber agregado el atributo
android:windowAnimationStyle
al tema de la actividad en tu archivo AndroidManifest.xml, como se muestra a continuación:Establecer el atributo
android:windowAnimationStyle
en@null
deshabilita la animación predeterminada para la ventana de la actividad. Una vez que hayas realizado este cambio, el archivo de recursoR.anim.empty_animation
debería funcionar como se esperaba, y la navegación entre los componibles se producirá sin ninguna animación.