我正在尝试在我的应用程序中显示facebook Newsfeed。我得到了urls
图像,并尝试使用 ImageLoader 类MemoryCache类来显示它们。我OOM Exception
因为大图像而得到。
我在此 链接中发现使用 SoftReference 或 WeakReference 将无法处理大位图。
为了处理这个我需要实现不同的类而不是使用过去ImageLoader,MemoryCache,FileCache classes.
我在哪里可以找到这些类?以及如何实现它们。
import java.lang.ref.SoftReference;
import java.util.HashMap;
import android.graphics.Bitmap;
public class MemoryCache {
private HashMap<String, SoftReference<Bitmap>> cache=new HashMap<String, SoftReference<Bitmap>>();
public Bitmap get(String id){
if(!cache.containsKey(id))
return null;
SoftReference<Bitmap> ref=cache.get(id);
return ref.get();
}
public void put(String id, Bitmap bitmap){
cache.put(id, new SoftReference<Bitmap>(bitmap));
}
public void clear() {
cache.clear();
}
}
请帮忙