2016-01-13 162 views
0

我正在使用通用圖像加載程序,但每次向上和向下滾動時都會重新加載圖像。Android - GridView滾動正在通用圖像加載器中重新加載圖像

我正在使用下面的代碼。

配置 - >

ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(getApplicationContext()) 
       .memoryCache(new WeakMemoryCache()) 
       .denyCacheImageMultipleSizesInMemory() 
       .discCacheFileNameGenerator(new Md5FileNameGenerator()) 
       .tasksProcessingOrder(QueueProcessingType.LIFO) 
//   .enableLogging() // Not necessary in common 
       .build(); 
     // Initialize ImageLoader with configuration. 
     ImageLoader.getInstance().init(config); 

選項 - >

options = new DisplayImageOptions.Builder() 
       .resetViewBeforeLoading() 
       .imageScaleType(ImageScaleType.EXACTLY) 
       .cacheInMemory(true) 
       .bitmapConfig(Bitmap.Config.RGB_565) 
       .build(); 

視圖 - >

public View getView(int position, View convertView, ViewGroup parent) { 
      LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
      View workingview = inflater.inflate(R.layout.gridview_item_photo_icon, null); 
      ImageView imageView = (ImageView) workingview.findViewById(R.id.picture); 
      ImageAware imageAware = new ImageViewAware(imageView, false); 
      imageLoader.displayImage("file://" + imageUrls.get(position), imageAware, options, new SimpleImageLoadingListener()); 
      return workingview; 
     } 

請讓我知道我要去哪裏錯了。

回答

0

在1MB的圖像兌現時,它有一個chache的限制,它可以清除緩存並再次下載,這就是爲什麼它會重新加載圖像的原因。 如果您沒有將圖像下載到手機內存的SD卡中,這是正確的方法。 您無法在緩存中保存太多數據。

相關問題