Android图片加载框架Glide的基本使用

       一直以来图片加载都是让Android程序员头疼的问题,一不小心就各种OOM,然后就是各种草泥马。。。带着一种膜拜大神的初衷,翻了下郭大神的博客,发现大神介绍的一款图片加载框架---Glide,原文在此。遂,阅之,coding之,然后写下这个博客。

       打开github,看到他目前的版本还是3.7,在Android Studio的gradle中添加相关依赖。

  dependencies {
  compile 'com.github.bumptech.glide:glide:3.7.0'
}

这样Glide就被添加到了项目中,首先来尝试下他的网络加载能力(记得添加相应网络权限)。百度随意一张图片,然后copy地址,代码如下:

String url = "https://ss2.bdstatic.com/70cFvnSh_Q1YnxGkpoWK1HF6hhy/it/u=928861582,28679776&fm=23&gp=0.jpg";
        Glide.with(this).load(url).into(imageview);

效果如下:

          

是不是很简单,但是因为是网络加载图片,所以相应的延迟还是很大的,在加载过程中很长一段时间ImageView部分显示的是个空白,这就必然导致了用户体验会特别差,但是

Glide提供了强大的API,这时候只需要在loadinto方法添加相应的占位图就行,修改代码如下:

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

当点击完按钮之后,ImageView首先加载的是占位图资源,待网络资源加载完毕就开始加载目标资源,但是连续点击按钮重新加载图片,点几次之后占位图就不再显示而是直接

展示目标图片,这是因为Glide强大的缓存机制已经将图片缓存下载了,所以没来得及加载占位图就已经完成了对目标图片的加载。当然,相应的既然能够在loadinto之间添

加相应的占位图,那么在这之间做容错性处理也是可行的,当需要加载的图片出现异常时候,显示一张赏心悦目的图片给用户并告诉他相应结果是不是比传统网页的404要强很多呢。     

     Glide.with(this).load(url).placeholder(R.drawable.waitting).error(R.drawable.error).into(imageview);

这只是Glide最基本的加载网络图片的使用,他的功能绝非仅仅如此,他还能够加载本地图片、应用资源、二进制流、Uri对象等等。同时还能够指定图片的格式以及大小等等等等。

      第一次写,很多地方借鉴了郭霖郭大神的博客内容,非常感谢他老人家的无私奉献。。。。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值