我正在尝试在我的应用中显示 facebook Newsfeed 。我得到了urls
图片,我尝试使用 ImageLoader类, MemoryCache类来显示它们。由于图片较大,我收到OOM Exception
。
我在此link中发现使用 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();
}
}
请帮助