Android:使用通用图像加载器加载大图像

时间:2014-08-12 12:04:19

标签: android out-of-memory universal-image-loader

我正在尝试制作如下图所示的活动。在viewpager的imageview上,我加载了一些随机图像,也加载了较小的图像。当有人点击小图片时,我会用新图片更新视图。我的问题是,当我更新其中一个小的视图后,我点击了三次以上,我得到一个OutOfMemory异常。我理解这是由bitmans引起的,因此我设置Universal Image Loader将图像缓存在磁盘上而不是内存上。此外,当有人按下其中一个小时,我清除了memort和disc cache。但我仍然有例外。任何想法如何处理它?<​​/ p>

通用图片加载程序代码

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

    ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(_activity.getApplicationContext()).build();
    ImageLoader.getInstance().init(config);
    ImageLoader imageLoader = ImageLoader.getInstance();

活动样式图片

enter image description here

1 个答案:

答案 0 :(得分:0)

try using 

    profile_options = new DisplayImageOptions.Builder()
        .showImageOnLoading(R.drawable.placeholder)
        .showImageForEmptyUri(R.drawable.placeholder) 
        .showImageOnFail(R.drawable.placeholder)
        .cacheInMemory(true)
        .cacheOnDisc(true)
        .considerExifParams(true)
        .bitmapConfig(Bitmap.Config.RGB_565)
        .build();

或下载最新版本的通用图像加载器