android常用的缓存策略
常用的缓存策略是LruCache和DiskLruCache
LRU 是 least Recently Used 既最近最少使用 当缓存快满的时候,会淘汰近期最少使用的缓存目标,很显然Lru算法的思想是很容易被接受的。
12.1 Bitmap的高效加载
加载一张图片 BitmapFactory提供了四类方法 decodeFile decodeResource,decodeStream和decodeByteArray.
高效的加载bitmap,核心思想就是采用BitMapFactory.Options来加载所需尺寸的图片。bitmapfactory.options按照一定采样率来加载缩小后的图片,这样降低内存占用
只要用到了bitmapFactory.options 的inSampleSize参数,既采样率。当inSampleSize为2时,那么采样后的图片宽高均为原图的1/2.
操作流程:
1.将Bitmapfactory.Options的inJustDecodeBounds参数设置为true并加载图片
2.从BitmapFactory.Options中取出图片的原始宽高信息,对应于outWidth和outHeight
3.根据采样率的规则并结合目标View的所需大小计算出采样率inSampleSize。
4.将BitmapFactory.Options的inJustDecodeBounds参数设置为false,然后重新加载图片