當前位置:編程學習大全網 - 源碼下載 - Glide使用過程中遇到的坑

Glide使用過程中遇到的坑

加載網絡圖片時第壹次加載死活加載不出來,頭像控件使用的是CircleImageView,最後換成ImageView試驗,發現沒有問題,這就找出問題所在了,就是CircleImageView這個控件和Glide之間的關系了。

查找相關資料後,找出問題所在以及解決方案如下:

1、使用Glide默認沒有圓角轉換的功能,需要使用自定義Transformation,但無法實現placeholder圖片的圓角轉換,但是圓角圖片,使用CircleImageView,雖然CircleImageView繼承ImageView,不能使用scaleType參數,否則報InflateException。CircleImageView 源碼主動拋出的異常。

2、問題出現的原因就是使用自定義ImageView,如CircleImageView,通過Glide加載網絡圖片,且設置了占位符,如placeholder或error,則第壹次不顯示網絡圖片

3、解決辦法有兩種,壹種是不使用占位符,另外壹種則是不使用默認動畫。

public static void glide(Activity activity, String imageUrl, ImageView imageView) {

Glide.with(activity)

.load(imageUrl)

.dontAnimate()

.placeholder(R.mipmap.zhan_course_new)

.error(R.mipmap.zhan_course_new)

.diskCacheStrategy(ALL)

.into(imageView);

}

public static void glide(Activity activity, String imageUrl, ImageView imageView) {

Glide.with(activity)

.load(imageUrl)

.error(R.mipmap.zhan_course_new)

.diskCacheStrategy(ALL)

.into(imageView);

}

  • 上一篇:操盤策略:教妳賺錢的金律壹百條
  • 下一篇:前端工作需要壹直學習嗎?
  • copyright 2024編程學習大全網