PDA

Ver la Versión Completa : [ CONSULTA ] Animacion Translate con repeticiones


AlejandroAlCubo
23/04/14, 18:03:55
Hola a Todos, buen día. Les comento que voy empezando a programar aplicaciones en Android por lo que espero no les moleste mi duda. Estoy intentando hacer una aplicación "simple" con animación y me encontré con el siguiente problema. Pues bien estoy haciendo una aplicación que muestre el movimiento de un TextView por medio de una serie de 4 Translate encapsulados en un Set en un archivo XML:


<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http......">

<translate
android:startOffset="2000"
android:duration="3000"
android:toXDelta="100"
android:toYDelta="0"/>

<translate
android:startOffset="5000"
android:duration="4000"
android:toXDelta="0"
android:toYDelta="100" />

<translate
android:startOffset="9000"
android:duration="3000"
android:toXDelta="-100"
android:toYDelta="0" />

<translate
android:startOffset="12000"
android:duration="4000"
android:toXDelta="0"
android:toYDelta="-100" />

</set>
y lo llamo desde el Main con:

animacion = AnimationUtils.loadAnimation(this, R.anim.translate);
txv1.startAnimation(animacion); //donde txv1 es mi TextView
Hasta ahí todo bien, hace los movimientos que quiero (forma una especie de cuadrado con los movimientos). Pero lo que quiero hacer es que se repita esa serie de movimientos mas de 1 sola vez, es decir de manera continua, por lo que intente hacerlo desde el Main poniendo:


animacion = AnimationUtils.loadAnimation(this, R.anim.translate);
animacion.setRepeatCount(Animation.INFINITE);
txv1.startAnimation(animacion);
Y no funciona. Y también desde el XML con:

<set xmlns:android="http...."
android:repeatCount="infinite">
Y tampoco funciona :oh:
No se si se me esta pasando aglo, o si de verdad algo así se puede aplicar en Android, o quizás no lo estoy haciendo de la manera correcta, ¿Puede alguien guiarme un poco, por favor?.
De antemano gracias por su atención y apoyo :ok:

kriogeN
23/04/14, 18:52:01
Yo me enfrenté al mismo problema y al final lo solucioné haciendo una chapuza:

Usando un AnimationListener y haciendo que en el onAnimationEnd la volviese a iniciar.

Después migré a NineOldAndroids (cosa que te recomiendo) y mi vida con las animaciones en Android cambió, son mucho más personalizables, puedes hacer muchas mas cosas y dan 0 problemas.

AlejandroAlCubo
23/04/14, 20:47:14
WOW! Muchas Gracias kriogeN, me funciono perfecto con la solución que me planteaste X-D :ok:. Lo que no entiendo muy bien es sobre eso del NineOldAndroids, es decir, ¿Para que sirve?, ¿Qué beneficios encontraste tu en su manejo?, aun así me servirá mucho tu referencia para profundizar mas en ese tema, por lo que agradezco muchísimo tu ayuda para resolver mi duda y para incrementar mi poco conocimiento de android!, gracias de nuevo :aplausos: