面试题Android

Glide一些不常用的用法记录

2019-09-18  本文已影响0人  儿歌八万首

Glide是作为一个快速高效的Android图片加载库,几乎能满足日常对远程图片的拉取/缩放/显示的一切需求。使用起来也很方便,常见用法,也就一行代码就ok:

Glide.with(this)
  .load(url)
  .placeholder(R.drawable.placeholder)
  .into(view);

从 Glide 4.3.0 开始,可以为请求失败的图片url重新设置新的备用的url地址,这个可以根据自己项目需求来设置,具体设置方法如下:

Glide.with(fragment).load(primaryUrl)
  .error(Glide.with(this).load(fallbackUrl))
  .into(imageView);

其中fallbackUrl为备用url,当primaryUrl请求错误,或者为null的时候会调用fallbackUrl来加载图片。

Glide 可以使用thumbnail 方法来设置加载图片的缩略图,可以指定一张缩略图的url,也可以和目标原图共用一个url。在原图加载完毕之前可以优先展示缩略图,这样有更好的用户体验。

Glide.with(fragment).load(url)
.thumbnail(Glide.with(this).load(thumbnailUrl))
.into(imageView);

可以通过在thumbnail()方法中设置一个新的RequestBuilder来加载缩略图url。当然在实际项目中,如果服务端并没有返回缩略图链接的话,也可以使用overridesizeMultiplier方法在原图的基础上加载一个地分辨的图片。

.thumbnail(Glide.with(fragment).load(localUri).override(thumbnailSize))
.thumbnail(/*sizeMultiplier=*/ 0.25f)

如果现在产品有这样一个需求,在特定的情况下,只加载缓存中的图片,如果没有缓存则加载图片失败用默认图代替,比如常见的省流量模式,你可以这样设置

.skipMemoryCache(true)
上一篇下一篇

猜你喜欢

热点阅读