图片缓存问题的总结

图片导致内存溢出,对listView 或 GridView的处理有以下方法:

1.分批(懒加载)

2.异步

3 .缓存(存sd卡 和软引用)


4.考虑压缩图片

5.杀手锏:Application中的OnLowMermery()方法 

6 try catch oom


最近因开发文件管理器,学习并用了LruCache 发现只要掌握三个类就能很好的图片缓存问题了,使用这三类时已包含了,分批,异步,缓存,图片压缩等知识点。


1. 第一个类是 BitmapFactory:图片的压缩 (参考详见:http://blog.csdn.net/guolin_blog/article/details/9526203

 

2. 第二个类是 LruCache :图片的缓存,这个类是将图片缓存到内存中,没有考虑存在sd卡中,文件管理器没有从网络下载,用他刚好,用DiskLruCache不合适。(参考文档同上)


3.第三个类是:DiskLruCache : 将图片缓存在sd卡中,或app所在的data目录下。(参考:http://blog.csdn.net/guolin_blog/article/details/28863651


用好以上三个类,就能实现oom问题了,如这三个类结合起来用实现 照片墙:http://blog.csdn.net/guolin_blog/article/details/34093441

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值