Glide使用及说明

Glide是一款Google推荐的图片加载库,它功能强大,我们不但可以通过他来加载本地存储的图片,还可以加载网络上或者是Uri路径的图片。除了加载图片之外,我们还可以通

过他来加载GIF图片和本地的Video。在加载图片之后我们还可以他来设置图片的大小,图片缓存,图片的显示动画还有缩略图等等。总之作为一款图片加载库Glide是非常优秀

的。说了这么多下面就让我们看看他是怎么用的吧。

一、加载一个图片资源(这里的资源可以是一个URL地址、也可以是系统的资源如drawable和mipmap里的资源、也可以是本地系统文件里的、抑或是一个Uri)

示例代码

image = (ImageView) findViewById(R.id.image);
        Glide.with(this)//参数为context
                .load(url)//加载的图片资源
                .into(image);//将要显示图片的控件

效果(其实没什么效果,就是显示一张图片)


二、关于使用图片占位符

一个是未加载完成使用的占位符(placeHolder()),另一个是加载错误使用的占位符(error()

Glide.with(this)
                .load(url)
                .placeholder(R.mipmap.ic_launcher)
                .error(R.drawable.ic_error)
                .into(image);

三、关于图片的大小调整(override(x,y))和缩放(有两个centerCrop和fitCenter)

override会将图片设置为设置的大小,然后会去填充显示的控件

centerCrop他是一种裁剪技术,通过缩放图片让他填充到ImageView的界内并且裁剪额外的部分,imageView可能会完全填充但是图像可能不会完整显示

fitCenter他是将图片缩放来完全显示在控件内

Glide.with(this)
                .load(url)
                .placeholder(R.mipmap.ic_launcher)
                .error(R.drawable.ic_error)
                .override(200, 300)
                .centerCrop()
                .into(image);
Glide.with(this)
                .load(url)
                .placeholder(R.mipmap.ic_launcher)
                .error(R.drawable.ic_error)
                .override(200, 300)
                .fitCenter()
                .into(image);
三、显示gif和本地视频资源(这个和显示图片的资源的方法基本是一样的都是通过load()方法)


四、缓存

Glide框架会进行两步缓存(内存缓存和磁盘缓存),不过你可以通过skipMemoryCache(true)来避免内存缓存,但是这样他还是会进行内存缓存,因为他要避免重复的网络请

求,当然你还是可以阻止磁盘缓存的,通过diskCacheStrategy(_)来设置是否磁盘缓存,这里的参数是一个枚举值,包含四个值

DiskCacheStrategy.NONE 什么都不缓存

DiskCacheStrategy.SOURCY只缓存原来的全分辨率图像(即原图)

DiskCacheStrategy.RESULT 缓存当前你显示的图像(即变化过后的图片)

DiskCacheStrategy.ALL 缓存所有图片

五、图像显示的优先级

当你需要同时显示多张图片时(比如一个网络相册),可能页面的顶部用来显示一张封面的的图片,下面用来显示相册内容图片,这个时候你可能就要让第一张图片能够先显示

出来,这时你可以用priority(_)来设置,这里有四个权限,从低到高依次是

Priority.LOW,Priority.NORMAL,Priority.HIGH,Priority.IMMEDIATE


猜你喜欢

转载自blog.csdn.net/android_hdh/article/details/52690300
今日推荐