No dudes en compartir nuestra web y códigos con otro, ayúdanos a ampliar esta comunidad.
Solución:
Eso sucede porque estás configurando el src del ImageView
en lugar del fondo.
Usa esto en su lugar:
qImageView.setBackgroundResource(R.drawable.thumbs_down);
Aquí hay un hilo que habla sobre las diferencias entre los dos métodos.
Uso en XML:
android:src="@drawable/image"
uso de la fuente:
imageView.setImageDrawable(ContextCompat.getDrawable(activity, R.drawable.your_image));
Respuesta corta
Simplemente copie una imagen en su res/drawable
carpeta y uso
imageView.setImageResource(R.drawable.my_image);
Detalles
La variedad de respuestas puede causar un poco de confusión. Tenemos
setBackgroundResource()
setBackgroundDrawable()
setBackground()
setImageResource()
setImageDrawable()
setImageBitmap()
Los métodos con Background
en su nombre todos pertenecen a la View
clase, no para ImageView
específicamente. Pero desde ImageView
hereda de View
también puedes usarlos. Los métodos con Image
en su nombre pertenecen específicamente a ImageView
.
Él View
todos los métodos hacen lo mismo entre sí (aunque setBackgroundDrawable()
está en desuso), por lo que solo nos centraremos en setBackgroundResource()
. Del mismo modo, el ImageView
Todos los métodos hacen lo mismo, así que solo nos centraremos en setImageResource()
. La única diferencia entre los métodos es el tipo de parámetro que pasa.
Configuración
Aquí hay un FrameLayout
que contiene un ImageView
. Él ImageView
inicialmente no tiene ninguna imagen en él. (Solo agregué el FrameLayout
para poder poner un borde alrededor. De esa manera usted puede ver el borde de la ImageView
.)
A continuación compararemos los diferentes métodos.
establecerRecursoImagen()
Si usa ImageView setImageResource()
, la imagen mantiene su relación de aspecto y se redimensiona para ajustarla. Aquí hay dos ejemplos de imágenes diferentes.
imageView.setImageResource(R.drawable.sky);
imageView.setImageResource(R.drawable.balloons);
establecerrecurso de fondo()
Uso de vistas setBackgroundResource()
por otro lado, hace que el recurso de la imagen se estire para llenar la vista.
imageView.setBackgroundResource(R.drawable.sky);
imageView.setBackgroundResource(R.drawable.balloons);
Ambas cosas
La imagen de fondo de View y la imagen de ImageView se dibujan por separado, por lo que puede configurar ambas.
imageView.setBackgroundResource(R.drawable.sky);
imageView.setImageResource(R.drawable.balloons);
Tienes la posibilidad compartir esta noticia si te ayudó.