Glide gif不玩

时间:2017-10-04 10:50:59

标签: android android-glide

我想将gif加载到imageview中,它会显示但不会开始播放。我使用这段代码:

Glide.with(context)
             .load("https://media.giphy.com/media/7rj2ZgttvgomY/giphy.gif")
             .into(imageView)

我也尝试添加.asGif(),但在这种情况下,图片根本不显示。我正在使用滑行3.8.0

6 个答案:

答案 0 :(得分:1)

试试这个。

Glide.with(context)
    .load(imageUrl)
    .asGif()
    .placeholder(R.drawable.loading2)
    .crossFade()
    .into(imageView);

答案 1 :(得分:0)

您也可以尝试

Glide  
    .with(context)
    .load(gifUrl)
    .asGif()
    .error(R.drawable.full_cake)
    .diskCacheStrategy(DiskCacheStrategy.SOURCE)`
    .into(imageViewGif);

答案 2 :(得分:0)

将您的gif更改为 https://i.giphy.com/media/7rj2ZgttvgomY/giphy.webp

Glide.with(context)
.load("https://i.giphy.com/media/7rj2ZgttvgomY/giphy.webp")
.asGif().into(imageView);

您也可以尝试GIFView

答案 3 :(得分:0)

您可以参考:here

如果您找不到,可以更改最新版本的Gline

repositories {
  mavenCentral()
  maven { url 'https://maven.google.com' }
}

dependencies {
  compile 'com.github.bumptech.glide:glide:4.2.0'
  annotationProcessor 'com.github.bumptech.glide:compiler:4.2.0'
}

我希望你能找到解决方案。

答案 4 :(得分:0)

您的代码没有任何问题。您可以检查是否拥有Internet权限。

<uses-permission android:name="android.permission.INTERNET" />

您的互联网速度可能会很慢而且Glide可能需要花费太多时间来加载,所以到那时您可以使用以下方式添加占位符图片:

.placeholder(android.R.color.holo_green_dark)

或者您可以使用

Listner添加到Request
  .listener(new RequestListener<String, GlideDrawable>() {
                    @Override
                    public boolean onException(Exception e, String model, Target<GlideDrawable> target, boolean isFirstResource) {
                        return false;
                    }

                    @Override
                    public boolean onResourceReady(GlideDrawable resource, String model, Target<GlideDrawable> target, boolean isFromMemoryCache, boolean isFirstResource) {
                        return false;
                    }
                })

看看Exception是什么。

答案 5 :(得分:0)

就我而言,我已将 imageview 尺寸设置为 ma​​tch_parent 并在 dp 中指定它为我做了。

不确定为什么 match_parent 在对话框中不起作用,播放 GIF,可能与缩放有关,如果是这种情况,则使用 scaleType:fitXY 也应该起作用