Android处理多个按钮点击
所以我有一个按钮,可以启动与服务器的通信。但是,当我尝试从on click中禁用按钮(以停止多次单击)时,直到on click结束才会发生。这是一个问题,因为服务器通信意味着该方法需要一段时间才能执行。我看到了前面的一个问题,它是通过使用标志来停止多次单击来回答的(据说按钮不能立即停用是一个已知的错误)。现在是否有其他更优雅的解决方案来解决这个问题,或者标志仍然是唯一的方法?在按钮的Android处理多个按钮点击,android,Android,所以我有一个按钮,可以启动与服务器的通信。但是,当我尝试从on click中禁用按钮(以停止多次单击)时,直到on click结束才会发生。这是一个问题,因为服务器通信意味着该方法需要一段时间才能执行。我看到了前面的一个问题,它是通过使用标志来停止多次单击来回答的(据说按钮不能立即停用是一个已知的错误)。现在是否有其他更优雅的解决方案来解决这个问题,或者标志仍然是唯一的方法?在按钮的onClick() 你可以 button.setEnabled(false); 在按钮的onClick() 你可
onClick()
你可以
button.setEnabled(false);
在按钮的onClick()
你可以
button.setEnabled(false);
我遇到这个问题时所做的是使用布尔标志,下面是使用标志的示例代码:
boolean isClicked = false;
Button btn.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
if (!isClicked) {
isClicked = true;
// CONNECT TO SERVER
isClicked = false;
}
}
我遇到这个问题时所做的是使用布尔标志,下面是使用标志的示例代码:
boolean isClicked = false;
Button btn.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
if (!isClicked) {
isClicked = true;
// CONNECT TO SERVER
isClicked = false;
}
}
你可以隐藏按钮
button.setVisibility(View.INVISIBLE);
或者禁用按钮
button.setEnabled(false);
或者使用布尔值保留标志,您可以隐藏按钮
button.setVisibility(View.INVISIBLE);
或者禁用按钮
button.setEnabled(false);
或者使用布尔值保留一个标志