studio animate android animation alpha

android - animate - AlphaAnimation no funciona



flip animation android (2)

He estado buscando una solución a mi problema. Pero mi código parece estar bien.

Trataré de explicar: tengo una vista de texto con Android: alpha = "0" en mi definición de diseño. Quiero (cuando se hace clic en una imagen) mostrar ese TextView con AlphaAnimation, de 0.0f a 1.0f.

Mi problema es que cuando hago clic en la imagen, no pasa nada. Pero lo extraño es que si configuro alfa a 1 en la definición del diseño y hago clic en la imagen, puedo ver la animación (alfa 1 -> alfa 0 -> alfa 1).

¿Qué estoy haciendo mal?

Mi código:

TextView tv = (TextView) findViewById(R.id.number); AlphaAnimation animation1 = new AlphaAnimation(0.0f, 1.0f); animation1.setDuration(1000); animation1.setFillAfter(true); tv.startAnimation(animation1);

Gracias por adelantado.


De manera más simple se presenta en this respuesta:

tv.animate().alpha(1).setDuration(1000);


El problema está en android:alpha="0" . Esta propiedad establece la transparencia de una vista http://developer.android.com/reference/android/view/View.html#attr_android:alpha

Cuando la propiedad alfa es igual a 0, la animación cambia la transparencia de 0*0.0f=0 a 0*1.0f=0 . Cuando la propiedad alfa se establece en 1, la animación cambia la transparencia de 1*0.0f=0 a 1*1.0f=1 . Es por eso que en el primer caso no se puede ver el texto y en el segundo todo funciona como se esperaba.

Para que todo funcione, debes establecer la propiedad de visibilidad como invisible en el diseño xml. Y antes de comenzar la animación alfa, llame a tv.setVisibility(View.VISIBLE);