GridView 网格布局使用(可用于图片展示 下) Glide加载图片

再基于上一遍博客:https://blog.csdn.net/sunqihui22/article/details/94379568

虽然上一边博客可以正常将内置SD卡中图片文件的显示出来,但是图片一旦多起来,就会很卡浏览器来不通畅。

主要是讲上一篇文章中的

替换为:

//用Glide加载图片
wuRenJiActivity.showImage(pictures.get(position).getImages(),viewHolder.image);
/**
 * 显示图片
 * @param url
 * @param imageView
 */
public void showImage(String url, ImageView imageView) {
    if (!TextUtils.isEmpty(url) && url.length() > 0) {
        url = url.replaceAll(" ", "");
    }
    if (TextUtils.isEmpty(url)) {
        return;
    }
    imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
    Glide.with(this).load(url)
            .dontAnimate()
            .placeholder(R.drawable.ic_loding)
            .diskCacheStrategy(DiskCacheStrategy.SOURCE)
            .error(R.drawable.ic_loding_error)
            .into(imageView);
}

所以这里引用Glide第三方jar包加载图片,这样会快很多。

 用法如下:

第一步:APP 的build.gradle中引用

implementation 'com.github.bumptech.glide:glide:3.7.0'

第二步,在project的build.gradle中声明maven库,不然glide jar包下载不下来

第三步,直接使用,基本方法为with()、load()、into()

Glide.with(this).load(url)
        .dontAnimate()
        .placeholder(R.drawable.ic_loding)
        .diskCacheStrategy(DiskCacheStrategy.SOURCE)
        .error(R.drawable.ic_loding_error)
        .into(imageView);

with()方法:用于创建一个加载图片的实例;

load()方法:用于指定待加载的图片资源

into()方法:我们希望让图片显示在哪个ImageView上,把这个ImageView的实例传进去。

关于Glide具体使用可参考:https://www.jianshu.com/p/4f457a124d67

猜你喜欢

转载自blog.csdn.net/sunqihui22/article/details/94456282