2012-08-01 5 views
0

그래서 나는 서버와 통신을 시작하는 버튼이 있습니다. 그러나 클릭 할 때까지 여러 번 클릭을 중지하기 위해 버튼을 비활성화하려고 시도 할 때 클릭이 끝날 때까지는 발생하지 않습니다. 이는 서버 통신이 메소드 실행을 위해 시간이 걸리는 것을 의미하므로 문제입니다. 나는 여러 번 클릭을 막기 위해 플래그를 사용하여 대답 한 이전 질문을 보았습니다. 버튼이 즉시 비활성화 될 수없는 알려진 버그라고 말했습니다. 이 문제에 대한 다른 더 우아한 해결책이 있습니까? 아니면 아직도 유일한 방법입니까? 에서안드로이드 여러 버튼 클릭을 처리

답변

3

버튼의 당신이 할 수있는 onClick()

, 나는이 문제에 대해, 이것에 대한 부울 플래그를 사용하는 플래그 사용에 대한 샘플 코드했을 때했던 어떤

button.setEnabled(false); 
+1

한 적절한 솔루션을 사용하여 플래그를 유지합니다. – Praveenkumar

2

:

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

button.setVisibility(View.INVISIBLE); 
,210

또는 버튼

button.setEnabled(false); 

를 사용하지 않거나 부울

관련 문제