我有一个带有图像的GridView,我使用Volley填充了它,并使用以下链接缓存了图像。我想从缓存的实现中的新活动中访问GridView的选定图像。我在此处在StackOverflow上进行了搜索,但找不到如何使用其键(在这种情况下为URL)访问缓存的图像。我遵循了这些链接,但找不到任何东西:
Jake Whartons Volley CUstomization
我是否必须在第二个活动中使用在ImageLoder对象中创建的同一LruCache对象,还是有其他方法?
Singleton类中的Imageloader对象
这是所使用的LruCache对象的默认实现。如果有人可以解释使用下面的代码?
imageLoader = new ImageLoader(requestQueue, new ImageLoader.ImageCache() {
private final LruCache<String, Bitmap> cache = new LruCache<>(10);
@Override
public Bitmap getBitmap(String url) {
return cache.get(url);
}
@Override
public void putBitmap(String url, Bitmap bitmap) {
cache.put(url, bitmap);
}
});
假设我有一个自定义类BitmapCache,该类扩展了LruCache并实现了ImageCache,请指导我如何在第二个活动中访问缓存以访问缓存的图像
public class LruCacheClass extends LruCache<String,Bitmap> implements ImageLoader.ImageCache {
public LruCacheClass(int maxSize) {
super(maxSize);
}
@Override
protected int sizeOf(String key, Bitmap value) {
return value.getRowBytes() * value.getHeight();
}
@Override
public Bitmap getBitmap(String url) {
return get(url);
}
@Override
public void putBitmap(String url, Bitmap bitmap) {
put(url, bitmap);
}}