首页 > 解决方案 > 如何在android中短时间内显示图像

问题描述

我想在单击按钮后延迟显示图像

       final Handler handler = new Handler();
    handler.postDelayed(new Runnable() {
        @Override
        public void run() {
            // Do something after 5s = 5000ms

        }
    }, 26000);

我想为此使用此代码,我想显示此图像(在运动布局上)在此处输入图像描述

单击此按钮 26 秒后 在此处输入图像描述

标签: javaandroidandroid-studiodelay

解决方案


你已经有了你的HandlerandpostDelayed方法。创建要显示的 ImageView,默认可见性为 GONE 或 INVISIBLE,并在postDelayed方法内部将其设置为 VISIBLE。

也许我没有正确理解您的问题,但您似乎已经回答了自己的问题。

让我分享一些代码。在您的 XML 文件中,您将拥有一个 ImageView 并设置可见性属性。

<ImageView
     android:id="@+id/yourImage"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:visibility="gone" />

在您的活动中,您将首先找到并创建对 ImageView 的引用,然后在延迟后更改其可见性属性。

ImageView yourImage = findViewById(R.id.yourImage);

final Handler handler = new Handler();
handler.postDelayed(new Runnable() {
    @Override
    public void run() {
        yourImage.setVisibility(View.VISIBLE);
    }
}, 26000);

默认情况下,您的图像不会显示,因为它在 XML 中设置为 GONE。处理程序将在 26 秒后执行 run 方法中的代码,然后您的图像可见性属性将设置为 VISIBLE。


推荐阅读