Glide基础用法(一)

本文详细介绍Glide图片加载库的使用方法,包括基本配置、加载应用内图片、网络图片及GIF图,同时讲解了如何指定图片格式、设置GIF播放次数及缓存策略。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

先上下地址:

Glide地址

开始

 首先gradle添加依赖

repositories {
  mavenCentral()
  google()
}

dependencies {
  implementation 'com.github.bumptech.glide:glide:4.8.0'
  annotationProcessor 'com.github.bumptech.glide:compiler:4.8.0'
}

 照着文档调用

 GlideApp.with(this).load(R.mipmap.ic_launcher).into(binding.ivPic);

 然后你会发现,嗯没错,GlideApp找不到,只有Glide。

这里需要新建class 继承AppGlideModule,如下:

import com.bumptech.glide.annotation.GlideModule;
import com.bumptech.glide.module.AppGlideModule;

/**
 * create by zj on 2018/12/26
 */

@GlideModule
public final class MyGlideAppConfig extends AppGlideModule {

}

 可以调用啦。

 运行下看下效果

 

除了加载应用内图片外还有其他的类型;

  //应用图片
        GlideApp.with(this).load(R.mipmap.ic_launcher).into(binding.ivPic);
        //网络图片
//        GlideApp.with(this).load(URL).into(binding.ivPic);
        //加载gif 应用图片
//        GlideApp.with(this).load(R.drawable.gif_test).placeholder(R.mipmap.ic_launcher).into(binding.ivPic);
        //加载gif 网络图片
//        GlideApp.with(this).load(URL_GIF).diskCacheStrategy(DiskCacheStrategy.ALL) .into(binding.ivPic);

如上所示,网络图片以及gif图等,

需要说一点,加载网络gif时,需要添加缓存策略,这里我使用的DiskCacheStrategy.ALL,否则加载出来的只是一张图片。

这样gif加载出来后是一直重复播放的,可能有人会问如何只播放一次呢?

上代码:

  //设置gif 播放次数
         GlideApp.with(this).load(URL_GIF).diskCacheStrategy(DiskCacheStrategy.ALL).into(new SimpleTarget<Drawable>() {
             @Override
             public void onResourceReady(@NonNull Drawable resource, @Nullable Transition<? super Drawable> transition) {
                 GifDrawable gifDrawable= (GifDrawable) resource;
                 gifDrawable.setLoopCount(1);
                 binding.ivPic.setImageDrawable(gifDrawable);
                 gifDrawable.start();
             }
         });

看下效果:

另外可以看下gifdrawable的其他方法:

这里就不多说这些方法,大家感兴趣可以一个一个试试。

指定图片格式

 Glide中可以指定图片的格式,主要有下面几个:

另外4.0之后指定图片格式需要在load之前。

有人会问了,上面加载gif图时,没有指定格式,不是已经加载出来了吗?

没错。Glide会自动判断,是不是很爽?

所以用的时候一般就不带了,但是你带了但是用的不对就有问题了,例如

 private final static String URL="https://raw.githubusercontent.com/zhjingjing/GlideTest/master/image/image_test.jpeg";
 
GlideApp.with(this).asGif().load(URL).diskCacheStrategy(DiskCacheStrategy.NONE).placeholder(R.mipmap.ic_launcher).error(R.drawable.error).into(binding.ivPic);

指定gif格式,但是加载url是一张静态图片,加载结果就会有问题了:

 

 

好了,到这里Glide的基础用法基本上已经介绍完成。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值