Después de la pregunta: Animate change of view background color on Android Estoy tratando de hacer que un TextView se desvanezca entre dos fondos a través del recurso TransitionDrawable. Mi archivo XML transición se ve así:TransiciónDibujado como fondo en TextView no funciona como se esperaba
<?xml version="1.0" encoding="utf-8"?>
<transition xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:drawable="@drawable/gray_bar" />
<item android:drawable="@drawable/green_bar" />
</transition>
y trato de configurarlo como fondo en tiempo de ejecución:
TextView answerBox = (TextView) findViewById(R.id.answerBox);
answerBox.setBackgroundResource(R.drawable.correct_transition);
TransitionDrawable transition = (TransitionDrawable) answerBox.getBackground();
transition.startTransition(1500);
El resultado es que el TextView se transforma de esto:
a esto:
Cuando toda la barra gris se debe transformar en g reen uno.
Ambas son imágenes png de 9 parches. Estos son los originales:
Mi conjetura es que la barra verde se está llenando el espacio disponible para el texto dentro de la barra gris, pero no sé qué. ¿Alguna pista? El gris también parece mucho más grande de lo que debería, pero no cambia de tamaño antes, durante o después de la transición, a pesar de la apariencia de las imágenes incluidas. Puede ser un problema con las imágenes de 9 parches porque he probado imágenes normales y la transición funciona muy bien.
¡Gracias por cualquier ayuda!
Tengo exactamente el mismo problema ... ¿lograron resolver esto de alguna manera? – zwebie
hmmm, en el ejemplo de google usan setImageDrawable tal vez el setbackground no es un comportamiento esperado, si no, entonces podrías poner una imagen vista como "fondo" (usando el diseño relativo colócalo debajo de la vista de texto) y solo ejecutar la transición sobre eso ? – MikeIsrael
No, eso tampoco funciona. He cambiado a color en lugar de imágenes. Sugiero que sea un problema de 9 parches porque probé el mismo código con imágenes normales y funcionó como se esperaba. Entonces, zwebie, está trabajando con color en lugar de imágenes de 9 parches, y en mi caso funciona con imágenes normales (sin 9 parches). – viridis