Picasso no carga la imagen
Aquí está el código para picasso:
ImageView img = (ImageView)findViewById(R.id.product_image); Picasso.with(this) .load(_url) .fit() .into(img, new Callback() { @Override public void onSuccess() { } @Override public void onError() { } });
Aquí está el valor de _url: http://kiagallery.ir/Images/Upload/Collection%20101/Spring%20101/d4a03b66dc7b46c694615c549b78b2e9.jpg
- Cultivo de Picasso a una vista
- Cómo cargar la imagen del GIF en el marcador de posición de Glide / Picasso / Ion etc
- Redimensionar la imagen a todo el ancho y la altura fija con Picasso
- Visualización de una imagen descargada de Internet como anotación - Uso de Picasso
- Picasso + convertView: ¿qué estoy haciendo mal aquí?
Y aquí está el xml:
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" > <ImageView android:id="@+id/product_image" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <TextView android:id="@+id/product_name" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="13sp" android:layout_below="@id/product_image"/> <TextView android:id="@+id/product_price" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="13sp" android:layout_below="@id/product_name"/> </RelativeLayout>
Como se puede ver la imagen se puede acceder a través de navegador, pero picasso no se carga, he comprobado la función onError y nunca se llama, estoy tranquilo perdido aquí, cualquier ayuda sería apreciada.
EDIT: Cuando doy el valor fijo de width y height de imageview como 200dp, carga la imagen, pero cuando la cambio a wrap_content no muestra la imagen.
- Picasso - obtener el camino de la imagen cargada
- ¿Cómo descargar la imagen más rápido en android Volley / Picasso / Glide cualquier otro?
- Picasso y contexto
- Biblioteca Picasso - Fuera de Memoria
- Android Picasso Configurar el tamaño de LruCache
- Cómo agregar un token de autenticación en el encabezado de la biblioteca Picasso
- ¿Picasso aplica opciones de redimensionamiento durante fetch ()?
- Memoria caché de picasso para Android
Mi conjetura es usted no debe llamar ese método del fit()
en Picasso mientras que su ImageView
tiene su anchura y altura definidos por WRAP_CONTENT
.
Este método espera hasta que el ImageView
haya sido medido y cambie el tamaño de la imagen para que coincida exactamente con su tamaño. Mientras que su ImageView
está teniendo el tamaño definido por WRAP_CONTENT
, entonces los métodos getMeasuredWidth()
y getMeasuredHeight()
devuelven aparentemente 0, lo que hace que su ImageView
invisible .
No se olvide de añadir el permiso para manifestar
<manifest ...> <uses-permission android:name="android.permission.INTERNET" />
Si está utilizando networkPolicy (NetworkPolicy.OFFLINE), es posible que no obtenga imágenes utilizando Picasso.
Estaba enfrentando un problema similar en el que tenía un ViewPager
de imágenes colocadas dentro de un DialogFragment
pantalla completa. El mismo ViewPager funcionó perfectamente cuando se colocó en otro lugar y Picasso cargó las imágenes como se esperaba. Pero sólo cuando se coloca en el DialogFragment
pantalla completa, algunas imágenes aparecerán en blanco. Parecía que las imágenes fueron obtenidas con éxito desde el servidor y cargadas en ImageView
, pero el ImageView
seguía apareciendo en blanco.
Ninguna de las respuestas anteriores o hilos similares funcionó para mí.
Así que cambié a otra gran biblioteca llamada Glide . Es bastante similar a Picasso. Más información aquí y aquí . A pesar de que esto podría no ser la respuesta más relevante, podría valer la pena dar un tiro para alguien que ha sido atrapado con un problema similar.