Android - GridView滚动正在通用图像加载器中重新加载图像

时间:2016-01-13 09:35:03

标签: android gridview universal-image-loader

我使用通用图片加载器,但每次上下滚动都会重新加载图片。

我使用下面的代码。

配置 - >

  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();

view - >

 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;
        }

请让我知道我哪里出错了。

1 个答案:

答案 0 :(得分:0)

android中大约有1MB的图像兑换有限制,它会清除缓存并再次下载,这就是为什么它再次重新加载图像。 如果您没有在手机存储器的SD卡中下载图像,这是正确的方法。 您无法在缓存中保留太多数据。