ImageView carga la imagen de alta resolución como muy mala calidad
Estoy usando un ListFragment
para mostrar un ListView
de objetos Lazy Loaded ImageView
usando el cargador de imágenes universal de Android . Los datos correctos están viniendo de mi fuente de datos y tengo la URL a mis imágenes bastante de alta resolución (sobre 1000px de par en par, 150kb). Estoy usando estos para llenar completamente cada fila que es 110dp alto.
El problema que tengo es que las imágenes se cargan a una resolución muy baja:
- Universal Image Loader gridview parpadea después de la llamada notifyDataSetChanged
- Uso de Android-UIL, ¿Cómo detener la descarga?
- ¿Puede Universal loader de imágenes para Android trabajar con imágenes de sqlite db?
- Universal Image Loader: ¿Puedo usar cache pero también actualizarlo?
- Universal-Image-Loader: mapas de bits erróneos se adjuntan a ImageView
El problema no es la imagen de origen, ya que es lo suficientemente alta calidad:
Http://www.puc.edu/__data/assets/image/0006/127581/IMG_5155.jpg
Estoy centrando la imagen y luego recortarla:
<?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" android:minHeight="110dp"> <TextView android:id="@+id/galleryTitle" android:layout_width="wrap_content" android:layout_height="80dp" android:layout_marginLeft="95dp" android:layout_marginRight="5dp" android:gravity="center_vertical" android:hint="16dp" android:lineSpacingExtra="0dp" android:lines="3" android:text="TextView" android:textSize="16sp" android:textStyle="bold" /> <ImageView android:id="@+id/galleryImageView" android:layout_width="fill_parent" android:layout_height="110dp" android:scaleType="centerCrop" android:src="@drawable/default_background" /> </RelativeLayout>
Visualización de la imagen en la fila:
public View getView(int position, View convertView, ViewGroup parent) { View itemView; TextView title; // Get the news item object PUCObjects.PUCPhotoGalleryItem item = items.get(position); // Inflater Service inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); itemView = inflater.inflate(R.layout.photos_gallery_row, parent, false); title = (TextView) itemView.findViewById(R.id.galleryTitle); ImageView imageView = (ImageView) itemView.findViewById(R.id.galleryImageView); // Set the Image imageLoader.DisplayImage(item.imageUrlExtraLarge, imageView); // Set the text title.setText(item.title); return itemView; }
¿Alguna idea de por qué está mostrando imágenes de baja resolución?
- Cargador de imágenes universal roundedBitmapDisplayer issues
- Cómo utilizar Universal Image Loader para cargar recursos localmente
- android: Universal Image Loader obtener dibujable de matriz de cadena
- Compartir Imagen elemento de transición tamaño incorrecto
- FileNotFoundException con Universal Image Loader
- ImageLoader - No descargues la imagen si ya está en caché
- ¿Cómo mostrar sólo imágenes de memoria caché en ViewPager con Universal Image Loader Android?
- FragmentStatePagerAdapter OutOfMemoryError
Parece que las imágenes se han reducido a escala. Mirando a esa biblioteca, la funcionalidad por defecto es la potencia de 2 muestras de imagen. Creo que esta es la fuente de su problema.
- ImageScaleType
- Opciones de pantalla
Por ejemplo:
DisplayImageOptions opts = new DisplayImageOptions.Builder().imageScaleType(ImageScaleType.NONE).build(); imageLoader.DisplayImage(item.imageUrlExtraLarge, imageView, opts);
- ¿Por qué elegiría la API de Android sobre las API de Google en el SDK de Eclipse?
- Android reproduce sonidos después del retardo