¿Cómo pause la animación de cuadros usando AnimationDrawable?¿Cómo pause la animación de cuadros usando AnimationDrawable?
Respuesta
De la API:
Las animaciones no tienen un método de pausa.
http://www.androidjavadoc.com/1.0_r1/android/view/animation/package-summary.html
que dan cuenta de este hilo es bastante antiguo, pero ya que esta fue la primera respuesta en Google cuando yo estaba buscando una manera de hacer una pausa en una animación, voy a publicar la solución a este problema para alguien más para ver Lo que necesita hacer es crear una subclase del tipo de animación que le gustaría usar y luego agregar métodos para pausar y reanudar la animación. Aquí está un ejemplo para AlphaAnimation:
public class PausableAlphaAnimation extends AlphaAnimation {
private long mElapsedAtPause=0;
private boolean mPaused=false;
public PausableAlphaAnimation(float fromAlpha, float toAlpha) {
super(fromAlpha, toAlpha);
}
@Override
public boolean getTransformation(long currentTime, Transformation outTransformation) {
if(mPaused && mElapsedAtPause==0) {
mElapsedAtPause=currentTime-getStartTime();
}
if(mPaused)
setStartTime(currentTime-mElapsedAtPause);
return super.getTransformation(currentTime, outTransformation);
}
public void pause() {
mElapsedAtPause=0;
mPaused=true;
}
public void resume() {
mPaused=false;
}
}
Esto mantendrá el aumento de su starttime mientras que la animación está en pausa, manteniendo de manera efectiva desde el acabado y manteniendo su estado en el que estaba cuando se detuvo.
Espero que ayude a alguien.
Esto funcionó perfectamente. Gracias. – Weston
Gracias por compartir con nosotros esto es muy útil +1 de mi parte! – Deepak
@Deepak puede ser trabajo para la animación de cuadros – Ashishsingh
- 1. ¿Cómo puedo cambiar la duración de una Animación de Android AnimationDrawable sobre la marcha?
- 2. Cómo cargar AnimationDrawable desde el archivo xml
- 3. Cómo cargar imágenes desde la tarjeta SD y ejecutar la animación usando AnimationDrawable o AnimationUtils en Android
- 4. animación fotograma Android con AnimationDrawable se detiene cuando se utiliza dentro de TranslateAnimation
- 5. problemas de duración de las imágenes AnimationDrawable
- 6. Agregar la transición a una AnimationDrawable
- 7. Pause NSOperation
- 8. Animación explícita de NSView usando animación central
- 9. Cargue dinámicamente una AnimationDrawable en un TextView
- 10. Android: Cómo mantener la relación de aspecto en animación
- 11. AnimationDrawable programmatically without animation-list xml
- 12. ¿Cómo cambio la imagen de fondo usando la animación jQuery?
- 13. Android: dicha animación usando XML para la animación en Android
- 14. Cómo buscar() luego pause() con JWPlayer 5.4
- 15. Validar múltiples cuadros de texto usando errorprovider
- 16. Animación dinámica usando storyboards
- 17. Imágenes agregadas a AnimationDrawable memoria de pérdida programada
- 18. Media Player androide botón Play/Pause
- 19. Animación entre dos estados de una vista, usando animación personalizada
- 20. Cómo borrar la animación aplicada al androide ImageView usando startAnimation
- 21. Animación de pseudo elementos usando jQuery
- 22. AnimationDrawable no funcionan en Android 2.2
- 23. Oyente de animación para la animación personalizada
- 24. ¿Cómo eliminar el desgarro de la animación?
- 25. cómo detener la animación central?
- 26. mover videoVer ... usando animación de traducción
- 27. ¿Cómo hago algo cuando termina una animación?
- 28. Transición de animación entre actividades usando FLAG_ACTIVITY_CLEAR_TOP
- 29. Animación de propiedad weightSum usando ObjectAnimator
- 30. Cómo secuenciar la secuencia de animación SVG?
gracias por la respuesta. Sí, soy consciente de que no hay un método de pausa, en su lugar implementé una clase personalizada que implementa Runnable y usé métodos posDelayed, removeCallbacks para realizar la tarea. No estoy seguro de si esta es una forma adecuada de hacerlo. – akc