如何使用 glide 将可绘制文件夹中的 GIF 图像加载到 ImageView 中?
How to load GIF image from drawable folder into ImageView using glide?
我必须使用 glide
显示从 drawable 加载 GIF 图像到 ImageView。我尝试了以下方法。
Glide.with(LoginActivity.this)
.load(getResources().getDrawable(R.drawable.bg_gif)).asGif()
.crossFade()
.into(relativeLayout);
但似乎不起作用,当我将图像放入 raw
时它起作用了 folder.but 问题是我必须使用不同尺寸的图像。
如有任何帮助,我们将不胜感激。
直接传资源id给load():
Glide.with(LoginActivity.this)
.load(R.drawable.bg_gif)
.asGif() // you may not need this
.crossFade()
.into(relativeLayout);
您可以尝试使用 Ion,它对我来说效果很好。
Ion
使用离子
Ion.with(imgView)
.error(R.drawable.default_image)
.animateGif(AnimateGifMode.ANIMATE)
.load("file:///android_asset/animated.gif");
使用 Glide
ImageView imageView = (ImageView) findViewById(R.id.imageView);
GlideDrawableImageViewTarget imageViewTarget = new GlideDrawableImageViewTarget(imageView);
Glide.with(this).load(R.raw.sample_gif).into(imageViewTarget);
另一种方法
对于Glide 3.0你需要提前设置asGif()
:
Glide.with(context)
.load(imageUrl)
.asGif()
.placeholder(R.drawable.loading2)
.crossFade()
.into(imageView);
请记住,仅使用 load() 将根据数据类型加载 GIF 或位图。除非您希望在给定的 url 不是 gif 时加载失败,否则您不需要指定 asGif()
从 drawable 加载 Gif 图像的步骤
您需要将 Gif 图片移动到项目的res/raw
文件夹
(
如果你的项目在资源中没有 raw
直接文件夹,那么只需制作一个并将你的 gif 放入其中)
然后你可以简单地用一行代码加载你的gif
Glide.with(this)
.load(R.raw.splash)
.into(new GlideDrawableImageViewTarget(
(ImageView) findViewById(R.id.image)));
将您的 Gif 放在 "raw" 文件夹中并使用
GlideDrawableImageViewTarget imageViewTarget = new GlideDrawableImageViewTarget(imageView);
Glide.with(this).load(R.raw.test).into(imageViewTarget);
对于滑行 4
GlideApp.with(this)
.load(R.raw.gif_file)
.diskCacheStrategy(DiskCacheStrategy.NONE)
.into(imageView);
我必须使用 glide
显示从 drawable 加载 GIF 图像到 ImageView。我尝试了以下方法。
Glide.with(LoginActivity.this)
.load(getResources().getDrawable(R.drawable.bg_gif)).asGif()
.crossFade()
.into(relativeLayout);
但似乎不起作用,当我将图像放入 raw
时它起作用了 folder.but 问题是我必须使用不同尺寸的图像。
如有任何帮助,我们将不胜感激。
直接传资源id给load():
Glide.with(LoginActivity.this)
.load(R.drawable.bg_gif)
.asGif() // you may not need this
.crossFade()
.into(relativeLayout);
您可以尝试使用 Ion,它对我来说效果很好。 Ion
使用离子
Ion.with(imgView)
.error(R.drawable.default_image)
.animateGif(AnimateGifMode.ANIMATE)
.load("file:///android_asset/animated.gif");
使用 Glide
ImageView imageView = (ImageView) findViewById(R.id.imageView);
GlideDrawableImageViewTarget imageViewTarget = new GlideDrawableImageViewTarget(imageView);
Glide.with(this).load(R.raw.sample_gif).into(imageViewTarget);
另一种方法
对于Glide 3.0你需要提前设置asGif()
:
Glide.with(context)
.load(imageUrl)
.asGif()
.placeholder(R.drawable.loading2)
.crossFade()
.into(imageView);
请记住,仅使用 load() 将根据数据类型加载 GIF 或位图。除非您希望在给定的 url 不是 gif 时加载失败,否则您不需要指定 asGif()
从 drawable 加载 Gif 图像的步骤
您需要将 Gif 图片移动到项目的
res/raw
文件夹 ( 如果你的项目在资源中没有raw
直接文件夹,那么只需制作一个并将你的 gif 放入其中)然后你可以简单地用一行代码加载你的gif
Glide.with(this) .load(R.raw.splash) .into(new GlideDrawableImageViewTarget( (ImageView) findViewById(R.id.image)));
将您的 Gif 放在 "raw" 文件夹中并使用
GlideDrawableImageViewTarget imageViewTarget = new GlideDrawableImageViewTarget(imageView);
Glide.with(this).load(R.raw.test).into(imageViewTarget);
对于滑行 4
GlideApp.with(this)
.load(R.raw.gif_file)
.diskCacheStrategy(DiskCacheStrategy.NONE)
.into(imageView);