在接手的项目中原来是这样使用的。如下
public static void setImage(ImageView imageview, String url, Context context, int defultPic) {
if (TextUtils.isEmpty(url + "")) {
imageview.setImageResource(defultPic);
} else {
RequestOptions options = new RequestOptions().diskCacheStrategy(DiskCacheStrategy.RESOURCE).placeholder(defultPic).error(defultPic).dontAnimate();
Glide.with(context).load(url).apply(options).into(imageview);
}
}
使用上述方法在加载大量图片时出现了OOM内存溢出的问题,经过研究改用了下面的方法
public static void displayImageCenter(final ImageView imageview, String url, Context context, int defultPic) {
if (TextUtils.isEmpty(url + "")) {
imageview.setImageResource(defultPic);
} else {
RequestOptions options = new RequestOptions().diskCacheStrategy(DiskCacheStrategy.RESOURCE).placeholder(defultPic).error(defultPic).dontAnimate();
Glide.with(context).load(url).apply(options).into(new SimpleTarget<Drawable>() {
@Override
public void onResourceReady(Drawable drawable, Transition<? super Drawable> transition) {
if(drawable!=null){
imageview.setImageDrawable(drawable);
}
}
});
}
}
这样就解决了OOM的问题。希望对您也有帮助!!!!