若干秒后出现图像按钮
若干秒后出现图像按钮
我想在点击后使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); } });
问题:为什么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