Android处理多个按钮点击

时间:2012-08-01 07:07:21

标签: android

所以我有一个启动与服务器通信的按钮。但是,当我尝试从点击内部禁用按钮(停止多次点击)时,直到点击结束才会发生这种情况。这是一个问题,因为服务器通信意味着该方法需要一段时间才能执行。我看到之前的一个问题是通过使用标志来阻止多次点击来解决的(并且据说已知错误是按钮无法立即停用)。现在还有其他更优雅的解决方案来处理这个问题,还是标志仍是唯一的方法?

3 个答案:

答案 0 :(得分:3)

在按钮的onClick()

你可以,

button.setEnabled(false);

答案 1 :(得分:2)

当我遇到此问题时所做的是使用布尔标志,这是使用标志的示例代码:

boolean isClicked = false;
Button btn.setOnClickListener(new View.OnClickListener() {
    public void onClick(View v) {
       if (!isClicked) {
           isClicked = true;
           // CONNECT TO SERVER
           isClicked = false;
    }
}

答案 2 :(得分:0)

您可以隐藏按钮

button.setVisibility(View.INVISIBLE);

或禁用按钮

button.setEnabled(false);

或使用布尔值保留标志