一.圖片變形問題
使用glide設置imageview的ScaleType 爲centerCrop時,第一次在recyclerview加載圖片時會出現圖片變形的情況,這時候取消glide的預加載動畫,這是控件不是wrap_content的情況代碼如下:
Glide.with(this).load(url).asBitmap().centerCrop().placeholder(R.drawable.shape_default).into(imageview);
二.圖片服用的問題
在使用glide加載列表圖片時,要進行圖片地址的判斷,如果不判斷有recyleview服用viewholder的原因,導致圖片服用的問題,具體解決代碼如下:
if (data.getKeyword() != null){
if (!TextUtils.isEmpty(data.getKeyword())){
Glide.with(getContext()).load(data.getKeyword()).asBitmap().placeholder(R.drawable.shape_default_icon_rectangle).into(chatItemContentImage);
} else {
// 圖片網址為空,清除imageView的Drawable
Glide.clear(chatItemContentImage);
chatItemContentImage.setImageDrawable(null);
}
}else {
chatItemContentImage.setImageResource(R.drawable.shape_default_icon_rectangle);
}