当您单击我的应用程序中的按钮时,如果您在屏幕/弹出窗口加载之前速度足够快,则会多次加载它们。我知道如何禁用按钮上的单击,但这不是一个选项,因为当您关闭弹出窗口或返回到上一个屏幕时,按钮将被禁用。我尝试使用 Handler 和 Runnable 在按钮再次激活之前等待 1 秒,但如果操作系统需要更多时间打开下一个屏幕,则此解决方案并不是最佳选择。所以我正在寻找最优化的解决方案。有什么想法吗?
编辑:setClickable(false) 然后将其设置回 true 不起作用,因为它加载屏幕/弹出窗口的速度比预期慢,按钮再次启用,并且再次打开屏幕/弹出窗口多次。
最佳答案
您可以使用以下代码同时禁用多次点击
private boolean isClicked;
@Override
public void onClick(final View v) {
if(isClicked) {
return;
}
isClicked = true;
v.postDelayed(new Runnable() {
@Override
public void run() {
isClicked = false;
}
}, 1000);
}
关于java - 如何在Android中禁用多次点击按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19859211/