Tengo un problema. Quiero animar el color de fondo de LinearLayout
, usando ObjectAnimator
.
El problema es que anima, pero no le importa la duración ni valueFrom
y valueTo
.Android objectAnimator animate backgroundColor of Layout
Este es mi archivo xml:
<objectAnimator xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="2000"
android:propertyName="backgroundColor"
android:repeatCount="infinite"
android:repeatMode="reverse"
android:valueFrom="#FF0000"
android:valueTo="#000000" />
En Java que llamo así:
ObjectAnimator objAnim = (ObjectAnimator)AnimatorInflater.loadAnimator(getActivity(), R.animator.animator_bkg);
objAnim.setTarget(view);
objAnim.start();
Tenga en cuenta que cuando me animo el alfa de la disposición, que funciona como se espera.
¿Es esto un error de Android (4.0.3 en Asus Transformer), o extraño algo?
¿Qué sucede exactamente cuando intentas animar los colores? – DeeV
La velocidad de animación es muy rápida, y parece que el fondo está animado con todos los colores posibles (como un color aleatorio). Veo azul, rojo, verde, amarillo, todo, y muy rápido :) – XMight
Esto no funciona porque entre el "número" 0xFF0000 y 0x000000 también están los otros colores primarios 0x00FF00 y 0x0000FF, y casi todos los demás colores también. Configure su calculadora de escritorio como programador/hexadecimal, y verá que la mitad de rojo es realmente amarillo oscuro en lugar de rojo oscuro. – Combuster