Desvanecimiento de la animación en forma de degradado de fondo

No he sido capaz de encontrar mensajes que hagan lo que quiero … Tengo un rectángulo:

<shape xmlns:android="http://schemas.android.com/apk/res/android"> <stroke android:width="2dp" android:color="#FFFFFF" /> <padding android:left="4dp" android:top="4dp" android:right="4dp" android:bottom="4dp" /> <corners android:radius="6dp" /> <gradient android:angle="90" android:startColor="#FF000000" android:centerColor="#FF000000" android:endColor="#FF0000cd" android:type="linear" /> 

La forma anterior se utiliza como un atributo de fondo en un RelativeLayout :

 <RelativeLayout android:id="@+id/layoutBottom" android:layout_width="match_parent" android:layout_height="wrap_content" android:animation="@anim/slide_top_to_bottom" android:background="@drawable/rectangle4" android:orientation="vertical" > 

Quiero desvanecer lentamente adentro y hacia fuera gradientes diferentes en este rectángulo. El problema es que este RelativeLayout cambia el tamaño dinámicamente a medida que su contenido cambia, así que no puedo usar un archivo de imagen como fondo (esto de hecho ocultaría el contenido del texto del diseño que cambia con frecuencia). He intentado quitar el android:background atributo del android:background y apenas usar un archivo de la imagen en mi RelativeLayout pero entonces esta imagen ocupa la pantalla entera puesto que debo usar wrap_content y este archivo de la imagen debe ser colocado en código antes de las vistas del texto que ocupan el RelativeLayout Texto está cubierto por la imagen). Sé cómo hacer una animación de interpolación Alpha pero no sé cómo asignar el atributo android:background a la animación. ¿Algunas ideas?

Cree un TransitionDrawable para desvanecerse entre dos drawables que se utilizan para el fondo desvanecido y unfaded.

 <?xml version="1.0" encoding="UTF-8"?> <transition xmlns:android="http://schemas.android.com/apk/res/android"> <!-- use whatever drawables you want, gradients, shapes etc--> <item android:drawable="@drawable/faded" /> <item android:drawable="@drawable/unfaded" /> </transition> 

http://developer.android.com/reference/android/graphics/drawable/TransitionDrawable.html

A continuación, utilice en código, iniciar la transición. He codificado duro 2 segundos (2000 milis)

 TransitionDrawable trans = (TransitionDrawable) myLayout.getBackground(); trans.startTransition(2000); 
FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.