全局加载图片Android-Universal-Im…

本文介绍了一种图片加载及缓存的实现方法,通过配置DisplayImageOptions来设定不同状态下的图片显示,如加载中、加载失败等。同时,通过ImageLoaderConfiguration详细设置了内存缓存策略、线程池配置、磁盘缓存策略等,确保了图片加载的高效性和资源的有效利用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

DisplayImageOptions

        //加载图片
        DisplayImageOptions options = new DisplayImageOptions.Builder()
                //配置下载网络图片失败的图片
                .showImageOnFail(R.mipmap.ic_error)
                //配置一个正在加载图片时候显示的一张默认图片
                .showImageOnLoading(R.mipmap.loading)
                //当图片地址为空的时候,会显示你默认配置的图片
                .showImageForEmptyUri(R.mipmap.ic_empty)
                //将图片裁剪成圆形图片
                //.displayer(new CircleBitmapDisplayer())
                //将图片裁剪成圆角矩形
                .displayer(new RoundedBitmapDisplayer(50))
    .cacheInMemory(true)//设置下载的图片是否缓存在内存中 
    .cacheOnDisc(true)//设置下载的图片是否缓存在SD卡中 
                .build();

ImageLoaderConfiguration

ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(this)      


.memoryCacheExtraOptions(480, 800) //即保存的每个缓存文件的最大长宽  
 .threadPriority(Thread.NORM_PRIORITY - 2) //线程池中线程的个数
 .denyCacheImageMultipleSizesInMemory() //禁止缓存多张图片
 .memoryCache(new LRULimitedMemoryCache(40*1024*1024)) //缓存策略
 .memoryCacheSize(50 * 1024 * 1024) //设置内存缓存的大小
 .diskCacheFileNameGenerator(new Md5FileNameGenerator()) //缓存文件名的保存方式
 .diskCacheSize(200 * 1024 * 1024) //磁盘缓存大小
 .tasksProcessingOrder(QueueProcessingType.LIFO) //工作队列
 .diskCacheFileCount(200) //缓存的文件数量 
 .diskCache(new UnlimitedDiskCache(cacheDir)) //自定义缓存路径 
 //.writeDebugLogs() // Remove for release app
 .build();//开始构建

        //构建加载图片配置
        ImageLoader.getInstance().init(config);

 

Manifest.xml 中加入权限,并且配置Application!
 
     
     
   
     

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值