2

我有自ListFragment定义ListAdapter和四个导航选项卡与其他内容。我需要显示一些需要从其中的 URL 下载的图像Fragment

我试过使用Universal Image Loader。它工作正常,但它似乎没有兑现我的文件,虽然我已经设置好了。每次我打开另一个选项卡然后回到这个图像开始再次下载。

我是displayImage(String url, ImageView view, DisplayImageOptions options)从打来getView()ListAdapter

问题

如何让 UIL 在每次重新创建Activitiy或时不下载图像Fragment

DisplayImageOptions options = new DisplayImageOptions.Builder()
    .showStubImage(R.drawable.blue_background)
    .cacheInMemory()
    .cacheOnDisc()
    .build();
    imageLoader.init(ImageLoaderConfiguration.createDefault(context));
4

1 回答 1

0

您确定它会再次下载图像吗?除非您指定了较小大小的磁盘缓存,否则不应发生这种情况,或者因为它仅将图像保存在内存中,当达到您为内存指定的最大大小时,它会删除旧图像!尽量不要使用 inMemory 缓存而只使用磁盘缓存,并尝试指定更多时间来加载图像,默认值为 1000ms :

options = new DisplayImageOptions.Builder()
    .showStubImage(R.drawable.ic_empty)
    .showImageForEmptyUri(R.drawable.ic_empty)
    .showImageOnFail(R.drawable.ic_empty)
    .resetViewBeforeLoading()
    .cacheOnDisc()
    .imageScaleType(ImageScaleType.IN_SAMPLE_INT) // default
    .bitmapConfig(Bitmap.Config.RGB_565) // default
    .displayer(new SimpleBitmapDisplayer()) // default
    .handler(new Handler()) // default
    .build();
于 2013-05-16T14:31:17.727 回答