Después de llamar al setCompoundDrawablesmétodo, no se muestra el Drawable compuesto.
Drawable myDrawable = getResources().getDrawable(R.drawable.btn);
btn.setCompoundDrawables(myDrawable, null, null, null);
¿Alguna idea?
                    
                        android
                                android-layout
                                android-drawable
                                
                    
                    
                        Hunterp
fuente
                
                fuente

(..)WithIntrinsicBoundsdebe llamarse a la variante del método nombrado . En una nota al margen,paddingpara que el Compuesto Dibujable se debe configurar después de esta llamada para causar un efectosetBounds(Rect)llamado.Respuestas:
Necesitaba estar usando
setCompoundDrawablesWithIntrinsicBounds.fuente
Use esto (lo probé). Funciona bien
fuente
EditText#setCompoundDrawablesWithIntrinsicBoundsrequiere al menos API 17.La imagen está en blanco porque no tiene límites especificados. Puede usar,
setCompoundDrawables()pero antes de especificar los límites de la imagen, use elDrawable.setBounds()métodofuente
Ejemplo establecido en la parte superior:
orden de argumentos: (izquierda, arriba, derecha, abajo)
fuente
Un poco más simple de nuevo:
fuente
Está en desuso en API 22.
Este código es útil para mí:
fuente
En Kotlin:
1) Conjunto
drawable:o
2) Conjunto
TextView:o
fuente
setCompoundDrawablesWithIntrinsicBoundsfuncionó ..Para mí, setCompoundDrawablesWithIntrinsicBounds (Drawable, Drawable, Drawable, Drawable) no funcionó.
Tuve que usar setCompoundDrawablesWithIntrinsicBounds (0, 0, 0, 0) .
fuente
Ejemplo con Kotlin:
fuente
La imagen no se muestra porque no especificó los límites, por lo que tiene 2 opciones aquí.
1er método
Use el
setCompoundDrawablesWithIntrinsicBoundsmétodo, como se muestra a continuación2do método
Puede aplicar límites al dibujable antes de aplicar a TextView, como se muestra a continuación
Eso es.
fuente