import android.graphics.Bitmap;
import android.support.v4.util.LruCache;
import android.widget.ImageView;
public class ImageLoader {
static LruCache<String, Bitmap> cache;
static {
int maxSize = (int) (Runtime.getRuntime().maxMemory() / 8);
cache = new LruCache<String, Bitmap>(maxSize) {
@Override
protected int sizeOf(String key, Bitmap value) {
return value.getRowBytes() * value.getHeight();
// return value.getByteCount();
}
};
}
public static void loadImage(String url, ImageView image) {
Bitmap bitmap = cache.get(url);
if (bitmap != null) {
image.setImageBitmap(bitmap);
return;
}
new ImageTask(image, cache).execute(url);
}
}
分享到:
相关推荐
自定义实现LRUCache的实现和调用. 简单地扩展LinkedHashMap
Android使用LruCache缓存图片,
异步下载图片,使用LruCache和手机目录缓存,GridView滑动的时候取消下载图片,效果流畅,这里是代码,更多的介绍http://blog.csdn.net/xiaanming/article/details/9825113
这是一个用LruCache算法的listView图片加载工具类,可以直接下载后接入自定义的Adapter即可。
AsyncTask的使用及ListView的常见优化 asyncTask异步加载数据 使用了LruCache优化图片加载 通过滑动监听提高ListView滑动流畅度.rar,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习...
简易单链表增删改查功能实现。新增内容:新增单链表LruCache算法增删改查,对学习LruCache 算法有一定帮助。
C# LRUcache C# LRUcache
Android缓存的一个Demo,对Lrucache 和Srofrencen 进行了分析的使用,希望大家一起学习交流
LruCache和DiskLruCache实现二级缓存的自定义ImageLoader
PhotosWallDemo 结合LruCache和DiskLruCache PhotosWallDemo 结合LruCache和DiskLruCache
基于Andoird的LRUCache机制介绍
LruCache缓存
LRUCache11:只有Header的C 11 LRU 缓存模板类,允许您定义键,价值和可选Map类型。使用一个双链表。
此DEMO主要是针对帧动画,实现方式有三种:1、FrameAnimation+xml;2、代码中加载每一帧;3、自定义动画,采用LruCache对每一帧图片进行内存优化防止图片oom。
lua-resty-lrucache, 在 LuaJIT FFI上,基于Lua缓存 电子邮件名称lua-resty-lrucache - 基于 LuaJIT FFI的land缓存目录NAME状态概要说明描述方法新插件设置 。删除先决条件安装工具待办事项社区服务英文邮件列表中文...
LruCache 的使用 Demo,虽然加载了非常大的图片,但是使用了 Lrucache 作为缓存,使整个 app 的内存使用情况降下来了。
主要是对LruCache的简单使用介绍,http://blog.csdn.net/richardli1228/article/details/50014895
LruCache 源码,摘抄下来,方便查阅。 https://android.googlesource.com/platform/frameworks/base/+/refs/heads/master/core/java/android/util/LruCache.java
LruCache实例demo 详情请看:http://blog.csdn.net/zxw136511485/article/details/52153287 Android 缓存浅谈(一)
这是一个包含异步加载、网络编程、JSON解析、LruCache图片缓存的简易的ListView图文混排Demo.rar,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。