¿Cómo puedo usar correctamente el indicador de intención FLAG_ACTIVITY_NO_ANIMATION
en el archivo AndroidManifest? Supongo que mi problema es trivial, pero no puedo encontrar un buen ejemplo o solución.
<intent-filter>
<data android:name="android.content.Intent.FLAG_ACTIVITY_NO_ANIMATION" />
</intent-filter>
Sin embargo, el compilador no informa de ningún error, pero data
no es correcto. Solo quiero deshabilitar la animación en caso de que cambie entre actividades. Puedo usar getWindow().setWindowAnimations(0);
en onCreate o onResume, pero usar flag es la mejor manera, ¿no?
Puedo usar también en código:
Intent intent = new Intent(v.getContext(), newactivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);
getContext().startActivity(intent);
Pero quiero usar esta bandera en el Manifiesto de Android. Para deshabilitar la animación también en caso de regresar de la segunda actividad a la primera.
Respuestas:
Puedes crear un estilo,
y configúrelo como tema para su actividad en el manifiesto:
También puede definir un estilo para especificar animaciones de entrada y salida personalizadas. http://developer.android.com/reference/android/R.attr.html#windowEnterAnimation
fuente
Si su contexto es una actividad, puede llamar a overridePendingTransition :
Entonces, programáticamente:
fuente
overridePendingTransition
fue agregado en el nivel 5 de API. Entonces no, no funciona en "todas" las versiones de Android, pero supongo que apuntas a un nivel API más alto que 5.Prueba este código,
fuente
También puede hacer esto en todas las actividades de las que no desea realizar la transición:
Me gusta este enfoque porque no tiene que meterse con el estilo de su actividad.
fuente
Este no es un ejemplo de uso o una explicación de cómo usarlo
FLAG_ACTIVITY_NO_ANIMATION
, sin embargo, responde cómo deshabilitar laActivity
animación de cambio, como se pregunta en el título de la pregunta:Android, ¿cómo deshabilitar el efecto 'borrar' al comenzar una nueva actividad?
fuente
Aquí hay una solución de una sola línea que funciona tan bajo como la
minSdkVersion 14
que debe insertar en ustedres/styles.xml
:al igual que:
¡Salud!
fuente
La línea en el estilo del tema funciona bien, pero eso reemplaza la animación con una pantalla en blanco. Especialmente en un teléfono más lento, es realmente molesto. Entonces, si desea una transición instantánea, puede usar esto en el estilo del tema:
fuente
crea tu propio estilo anulando Android: Tema
Luego úsalo en manifiesto de esta manera:
fuente
Después de comenzar la intención, puede usar este código:
Si se usa, la intención funcionará sin animaciones ni transiciones.
fuente