我有一个按钮,当它被按下时它会播放一个音频文件。我想在按钮上延迟 5 秒,这样用户就不会按下按钮并一遍又一遍地播放声音。我想我真正想要的是按钮在按下后禁用 5 秒。有谁知道如何做到这一点?
最佳答案
在按钮的 onClickListener 中:
myButton.setEnabled(false);
Timer buttonTimer = new Timer();
buttonTimer.schedule(new TimerTask() {
@Override
public void run() {
runOnUiThread(new Runnable() {
@Override
public void run() {
myButton.setEnabled(true);
}
});
}
}, 5000);
这将在单击时禁用该按钮,并在 5 秒后再次启用它。
如果点击事件是在扩展 View 的类中处理的,而不是在 Activity 中处理的,则执行相同的操作,但将 runOnUiThread
替换为 post
。
关于ANDROID:按下按钮后如何延迟?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13398104/