2011-09-21 6 views

답변

6
button.setOnClickListener(new OnClickListener() { 

     @Override 
     public void onClick(View v) { 
      Button button = (Button) v; 
      button.setVisibility(View.INVISIBLE); 
     } 
    }); 

:

   button.setVisibility(View.GONE); 

은 "폴드"하게 만들뿐 아니라 보이지 않을뿐만 아니라 레이 아웃에도 공간을 차지하지 않습니다.

+0

정말 고마워요! 대답을 찾는 데 몇 시간이 걸렸습니다. 나는 코드를 찾기 위해 지옥을지나 갔다. ..! – Wahid

+0

사이트에 처음 들어서서이 사실을 알려주세요. 문제를 해결하는 답을 발견하면 "수락 됨"으로 표시하십시오. 그래서 다른 사람들은 당신에게 어떤 대답이 도움이되는지 알고 있습니다. 답의 왼쪽에있는 투표 위젯 아래의 녹색 확인란입니다. – richardwiden

+0

죄송합니다. "이 게시물이 유용 했습니까?"라는 메시지가 녹색 마커라고 생각했습니다. (u는 [email protected]에서 이메일을 보낼 수 있습니다.) 유능한 사람처럼 보입니다. 약간의 도움이 필요합니다. – Wahid

1

아주 간단합니다. 당신의 Button's on click method.

Button.setVisibility(View.INVISIBLE); 

편집에서 버튼

1

넣어이 라인의 OnClickListener() 내부 setVisibility(View.Invisible) : 당신이 완전히 버튼보기를 간 다음

Button.setVisibility(View.GONE); 
1

은 그냥 OnClickListener를이를 사용하려고 한 경우 :

button.setVisibility(View.INVISIBLE); 

당신이 완전히 보이지 않고 레이아웃 공간을 사용하기를 원하면

button.setVisibility(View.GONE); 
0

이렇게하면됩니다.

yourbutton.setVisibility(Button.GONE); 

레이아웃에서 단추를 제거하면 다른 컨트롤이 해당 공간에 사용됩니다.

그냥 숨기고 다른 레이아웃과 버튼 크기를 유지하려면 당신이 사용할 수있는

yourbutton.setVisibility(Button.INVISIBLE); 
이 그것의 마지막 행을 전환, 보이지 않는 이동하지만 여전히 레이아웃에 공간을 차지하게
관련 문제