Aquí está la versión simplificada de mi LayerList. Tiene un mapa de bits en un elemento para evitar escalas. Quiero cambiar el dibujo de este mapa de bits programáticamente. ¿Hay alguna forma de hacer esto?Cambiar mapa de bits extraíble en LayerListDrawable
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/item"
android:left="165dp"
android:top="245dp" >
<bitmap
android:id="@+id/bitmap"
android:src="@drawable/tag_de_01"
android:gravity="top|left" />
</item>
</layer-list>
He intentado lo siguiente sin éxito:
Resources res = getResources();
LayerDrawable layerDrawable = (LayerDrawable) res.getDrawable(R.drawable.layer_list_drawable);
Drawable newDrawable = (Drawable)res.getDrawable(R.drawable.something);
// works, but scales the image because the drawable of the item is set instead the one of the bitmap
layerDrawable.setDrawableByLayerId(R.id.item, newDrawable);
// doesn't work at all
layerDrawable.setDrawableByLayerId(R.id.bitmap, newDrawable);
Tengo el mismo problema. ¿Alguien puede ayudar? – Lobo
¿Pudo encontrar una respuesta? –