¿Cómo proporcionar animación al llamar a otra actividad en Android?
Tengo dos actividades A y B. Quiero tener la retráctil de la animación cuando la actividad A llama a B y maximizar la animación cuando la actividad B llama A. No necesito los archivos xml de la animación para esto.
Cuando llamamos a otra actividad en Android da su animación predeterminada y luego llama a encogimiento animación.
- ¿Por qué mi animación de rotación todo wonky cuando se aplica a una transición de la actividad?
- Android: Actividad no encontrada excepción en algunos dispositivos, al intentar abrir el archivo HTML local en el navegador
- Android - Actividad de espera durante la animación
- ¿Cuáles son las mejores prácticas en Android para mantener los datos entre las actividades deathes / restarts para toda la sesión de la aplicación?
- Android: ¿Cómo restablecer / eliminar las preferencias de la aplicación durante las pruebas de unidad?
Lo que quiero es que la animación por defecto no debe ocurrir y la animación que quiero debe ocurrir.
¿Podemos dar la animación cuando llamamos a otra actividad?
- ¿Cómo puedo añadir una animación a la actividad finish ()
- Cómo evitar que el servicio se reinicie después de que la actividad se haya barrido desde el conmutador de tareas?
- GetExtras () devuelve null en el nivel de aplicación (-class)
- Cómo crear un detector de animación para las transiciones de actividad
- ¿Disminuye la animación deslizante entre las actividades de Android?
- Utilice Parcelable para pasar un objeto de una actividad de android a otra
- Ventajas de utilizar Bundle en lugar de Direct Intent putExtra () en Android
- Cómo lograr la animación de derecha a izquierda para iniciar la actividad
Desde API 16 puede proporcionar un paquete de opciones de actividad cuando llama a Context.startActivity (Intent, Bundle) o métodos relacionados. Se crea mediante el constructor ActivityOptions :
Intent myIntent = new Intent(context, MyActivity.class); ActivityOptions options = ActivityOptions.makeCustomAnimation(context, R.anim.fade_in, R.anim.fade_out); context.startActivity(myIntent, options.toBundle());
No olvide consultar los otros métodos del constructor ActivityOptions y ActivityOptionsCompat si está utilizando la biblioteca de soporte técnico.
API 5+:
Para aplicaciones que apuntan al nivel 5+ de la API, se encuentra el método Actividades overridePendingTransition
. Se necesitan dos identificadores de recursos para las animaciones entrantes y salientes. Un id de 0
desactivará las animaciones. Llámalo inmediatamente después de la llamada de startActivity
.
es decir:
startActivity(new Intent(this, MyActivity.class)); overridePendingTransition(R.anim.fade_in, R.anim.fade_out);
API 3+:
Puede evitar que la animación predeterminada (Deslice desde la derecha) con el indicador Intent.FLAG_ACTIVITY_NO_ANIMATION
en su intento.
es decir:
Intent myIntent = new Intent(context, MyActivity.class); myIntent.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION); context.startActivity(myIntent);
Entonces en su actividad simplemente tiene que especificar su propia animación.
Esto también funciona para la API 1.5 (Nivel 3).
Debe utilizar el método OverridePendingTransition para lograrlo, que está en la clase Activity . Animaciones de ejemplo en la carpeta res / anim del ejemplo apidemos. Revisalo. Más que comprobar la demo en ApiDemos / App / Activity / animation .
Ejemplo:
@Override public void onResume(){ // TODO LC: preliminary support for views transitions this.overridePendingTransition(R.anim.in_from_right, R.anim.out_to_left); }
Escribió un tutorial para que pueda animar su actividad dentro y fuera,
Disfrutar:
Jelly Bean agrega soporte para esto con el método ActivityOptions.makeCustomAnimation () . Por supuesto, ya que es sólo en Jelly Bean, es prácticamente inútil para fines prácticos.
- Error de la aplicación: la conexión al servidor no tuvo éxito. (Archivo: ///android_asset/www/index.html)
- La exención 'No se puede agregar ventana – token de Android' no es para una aplicación '