【问题标题】:How to use GIF image as ProgressBar?如何使用 GIF 图片作为 ProgressBar?
【发布时间】:2018-09-24 11:22:30
【问题描述】:

按钮点击事件结束后,GIF 图像不再可见。它是第一次工作,但不适用于按钮点击事件;

我使用以下代码在图像视图中加载 GIF;

Glide.with(getApplicationContext()).load(R.drawable.loading_progress).asGif().into(ImgV);

GIF 消失的代码如下;

ImgV.setVisibility(View.GONE);

再次使用下面的代码,在按钮点击事件中 GIF 不可见;

ImgV.setVisibility(View.VISIBLE);

【问题讨论】:

  • 我认为您必须将 Gif 重新分配给 Imageview 以使其再次可见。

标签: android progress-bar android-progressbar android-glide


【解决方案1】:

第一个决定 使用

再次加载 gif
Glide.with(getApplicationContext()).load(R.drawable.loading_progress).asGif().into(ImgV);

在那之后改变可见性

ImgV.setVisibility(View.VISIBLE);

第二次决定 试着打电话

ImgV.invalidate()

【讨论】:

  • 我什么时候可以调用 ImgV.invalidate() ?
  • 更改可见性后尝试调用 invalidate()
  • 对我不起作用无法解析“RequestBuilder”中的方法“asGif”!!!
【解决方案2】:

您可以使用此库在按钮上显示和隐藏 GIF 点击GIF Drawable

在您的构建 gradle 中添加这些:

repositories {
mavenCentral()
maven { url "https://oss.sonatype.org/content/repositories/snapshots" }


}
    dependencies {
        implementation 'pl.droidsonroids.gif:android-gif-drawable:1.2.+'
    }

在您的 XML 文件中:

<pl.droidsonroids.gif.GifImageView
    android:id="@+id/gif"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:src="@drawable/tenor"
    />

然后在你的 Java 文件中

    GifImageView gifImageView = findViewById(R.id.gif);

    button.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            if (gifImageView.getVisibility() == View.VISIBLE) {
                gifImageView.setVisibility(View.GONE);
            } else {
                gifImageView.setVisibility(View.VISIBLE);
            }

        }
    });

【讨论】:

    猜你喜欢
    • 2018-08-17
    • 1970-01-01
    • 1970-01-01
    • 2011-01-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-30
    • 2012-04-17
    相关资源
    最近更新 更多