2015-03-13 3 views
0

Я использую Universal Imageloader и Volley, чтобы загрузить изображение с моего сервера. Оба результата приводят к размытому изображению. Не имеет значения, что ширина и высота изображения меньше или больше разрешения экрана. Я попытался загрузить изображение, которое я пытаюсь использовать в низком и высоком разрешении. Изображение всегда отображается размытым.Изображение загружено с сервера размыто в ImageView

Imageloader:

optionsImg = new DisplayImageOptions.Builder() 
      .showImageForEmptyUri(R.drawable.noimage) 
      .cacheOnDisc(true) 
      .imageScaleType(ImageScaleType.EXACTLY_STRETCHED) 
      .cacheInMemory(true) 
      .bitmapConfig(Bitmap.Config.ARGB_8888) 
      .considerExifParams(true) 
      .displayer(new FadeInBitmapDisplayer(1555)) 
      .build(); 

imageLoader.displayImage("http://www.mywebsite.com/Images/image.png", iv_bucket, optionsImg, new SimpleImageLoadingListener() { 
     boolean cacheFound; 

     @Override 
     public void onLoadingStarted(String url, View view) { 
      List<String> memCache = MemoryCacheUtil.findCacheKeysForImageUri(url, ImageLoader.getInstance().getMemoryCache()); 
      cacheFound = !memCache.isEmpty(); 

      if (!cacheFound) { 
       File discCache = DiscCacheUtil.findInCache(url, ImageLoader.getInstance().getDiscCache()); 
       if (discCache != null) { 
         cacheFound = discCache.exists(); 
        } 
      } 
     } 

     @Override 
     public void onLoadingFailed(String imageUri, View view, FailReason failReason) {} 

     @Override 
     public void onLoadingComplete(String imageUri, final View view, Bitmap loadedImage) { 
      if (cacheFound) {                   ImageLoader.getInstance().displayImage(imageUri, (ImageView) view, optionsImg); 
      } 

     } 
}); 

Volley:

com.android.volley.toolbox.ImageLoader nil = AppController.getInstance().getImageLoader(); 
nil.get("http://www.mywebsite.com/Images/image.png", new ImageListener() { 

     @Override 
     public void onErrorResponse(VolleyError error) { 
      Log.e("IMG", "Image Load Error: " + error.getMessage()); 
     } 

     @Override 
     public void onResponse(ImageContainer response, boolean arg1) { 
      if (response.getBitmap() != null) { 
       Log.e("IMG_BG", "Image Load Success"); 
       iv_bucket.setImageBitmap(response.getBitmap()); 
      } 
     } 
}); 

ответ

0

Я так хромой. Мой телефон кэшировал изображения низкого качества, так что, даже если я увеличил качество, он отобразил кешированные фотографии