Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


Llamar setCompoundDrawables () no muestra el Compound Drawable

Después de llamar al método setCompoundDrawables , no se muestra el compuesto Drawable.

 Drawable myDrawable = getResources().getDrawable(R.drawable.btn); btn.setCompoundDrawables(myDrawable, null, null, null); 

¿Alguna idea?

6 Solutions collect form web for “Llamar setCompoundDrawables () no muestra el Compound Drawable”

Necesitaba usar setCompoundDrawablesWithIntrinsicBounds .

Use esto (probé). Funciona bien

 Drawable image = context.getResources().getDrawable( R.drawable.ic_action ); int h = image.getIntrinsicHeight(); int w = image.getIntrinsicWidth(); image.setBounds( 0, 0, w, h ); button.setCompoundDrawables( image, null, null, null ); 

La imagen está en blanco porque no tiene límites especificados. Puede utilizar setCompoundDrawables() pero antes de especificar los límites de la imagen, utilizando el método Drawable.setBounds()

Un poco más simple de nuevo:

 Drawable image = context.getResources().getDrawable(R.drawable.ic_action ); image.setBounds( 0, 0, image.getIntrinsicWidth(), image.getIntrinsicHeight() ); button.setCompoundDrawables( image, null, null, null ); 

Ejemplo establecido en la parte superior:

 view.setCompoundDrawablesWithIntrinsicBounds( null, getResources().getDrawable(R.drawable.some_img), null, null); 

Argumentos de orden: (izquierda, arriba, derecha, abajo)

Está obsoleto en la API 22.

Este código es útil para mí:

 Drawable drawable = ResourcesCompat.getDrawable(getResources(),R.drawable.wen, null); drawable.setBounds(0, 0, drawable.getMinimumWidth(), drawable.getMinimumHeight()); tv.setCompoundDrawables(drawable, null, null, null); 
FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.