若干秒后出现图像按钮

5 浏览
0 Comments

若干秒后出现图像按钮

我想在点击后使ImageButton消失,然后两秒后再次出现。\n我在stackoverflow上搜索了一下,但没有找到任何答案。\n我尝试使用Timer,但我的活动开始崩溃。\n

findViewById(R.id.button).setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(final View button) {
                button.setBackgroundResource(R.drawable.avatar_dead);
                final long changeTime = 1000L;
                button.postDelayed(new Runnable() {
                    @Override
                    public void run() {
                        button.setBackgroundResource(R.drawable.avatar_small);
                    }
                }, changeTime);
            }
        });

0
0 Comments

问题:为什么Image Button(图像按钮)需要等待一段时间后才出现,并提供解决方法。

解决方法:可以使用postDelayed方法来延迟显示图像按钮。该方法的第一个参数是一个Runnable(可运行的任务),第二个参数是延迟的毫秒数。

示例代码如下:

new Handler().postDelayed(() -> myButton.setVisibility(View.VISIBLE),2000);

解决方案中使用了Handler类来延迟显示图像按钮。Handler类是Android中用于管理线程和消息传递的类。通过使用postDelayed方法,可以在指定的延迟时间后执行一个任务,这里的任务是将myButton的可见性设置为View.VISIBLE,即显示该按钮。

可能原因:在代码中出现了"Handler is not abstract, maybe you've imported something wrong."的错误提示,可能是因为导入了错误的类。

参考链接:https://developer.android.com/reference/android/os/Handler.html

0