Configuración de GradientDrawable a través de RemoteView
Esto es lo que quiero hacer: tengo un widget y quiero establecer su fondo dependiendo de la elección de colores de los usuarios. Tiene que ser un gradiente. El fondo debe configurarse configurando el fondo del linealLayout. Para las pruebas, lo hice para un fondo ficticio como:
remoteViews.setInt(R.id.layout, "setBackgroundResource", R.drawable.widget_background);
He visto esta pregunta:Llame a setImageDrawable desde RemoteViews pero no soy capaz de entender cómo implementar. Ni siquiera puedo encontrarsetXYZ()
como se menciona allí. Esto es lo que he intentado hasta ahora:
Intenté ImageView como fondo (antes de LinearLayout). No proporciona margen adecuado para el widget. Dado que el texto del widget es dinámico, a veces sale de imageView, que no es lo que quiero
Haciendo un bg.xml en el que tengo:
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<padding
android:bottom="1dp"
android:left="1dp"
android:right="1dp"
android:top="1dp" />
<corners
android:bottomLeftRadius="7dp"
android:bottomRightRadius="7dp"
android:topLeftRadius="7dp"
android:topRightRadius="7dp" />
</shape>
Ahora estoy totalmente confundido y atorado. ¿Puede alguien ayudar (Probablemente más de código y menos de enlaces.) Lo antes posible? También por favorno cierre esta pregunta como ya se ha preguntado.