使用glide框架加載圖片遇到的一些問題

一.圖片變形問題

     使用glide設置imageview的ScaleType 爲centerCrop時,第一次在recyclerview加載圖片時會出現圖片變形的情況,這時候取消glide的預加載動畫,這是控件不是wrap_content的情況代碼如下:

      

Glide.with(this).load(url).asBitmap().centerCrop().placeholder(R.drawable.shape_default).into(imageview);


如果控件沒有給予固定大小,首次加載在recyclerview未顯示的一些item 還是會出現加載變形的情況,當刷新界面的時候有恢復正常的狀態.


二.圖片服用的問題

     在使用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);
            }




                  

發佈了32 篇原創文章 · 獲贊 67 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章