package me.storm.ninegag.data; import android.graphics.Bitmap; import android.os.Build; import android.util.LruCache; import com.android.volley.toolbox.ImageLoader; import android.os.Build.VERSION; /** * Created by storm on 14-3-25. */ public class BitmapLruCache extends LruCache<String, Bitmap> implements ImageLoader.ImageCache { public BitmapLruCache(int maxSize) { super(maxSize); } @Override protected int sizeOf(String key, Bitmap bitmap) { if (VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB_MR1) { return bitmap.getByteCount(); } // Pre HC-MR1 return bitmap.getRowBytes() * bitmap.getHeight(); } @Override public Bitmap getBitmap(String url) { return get(url); } @Override public void putBitmap(String url, Bitmap bitmap) { put(url, bitmap); } }