안드로이드 레이아웃 버튼 보이기 숨기기
페이지 정보

본문
안드로이드에서 레이아웃이나 버튼 이미지 뷰 등등 xml에서 제어 가능한 부분을 조건에 따라 보여주고 숨길 수 있는 방법이 있었다.
layout.setVisibility(View.VISIBLE);
해당 뷰를 보여줌
layout.setVisibility(View.INVISIBLE);
해당 뷰를 안 보여줌(공간은 존재)
layout.setVisibility(View.GONE);
해당 뷰를 안 보여줌(공간마저 감춤)
INVISIBLE과 GONE의 차이는 공간을 보여주느냐 안 보여주느냐의 차이이다.
예를 들면 1 2 3 4 5 의 숫자가 있을때 3을 숨기려고 한다면
INVISIBLE은 1 2 " " 4 5 이런 식으로 3은 없지만 자리는 남아있고
GONE은 1 2 4 5 이런 식으로 3과 공간 모두 숨기게 된다.
사용 예로
LinearLayout layout = (LinearLayout) findViewById(R.id.first);
LinearLayout layout2 = (LinearLayout) findViewById(R.id.second);
LinearLayout layout3 = (LinearLayout) findViewById(R.id.third);
switch (checkedId) {
case R.id.button:
layout.setVisibility(View.VISIBLE);
layout2.setVisibility(View.INVISIBLE);
layout3.setVisibility(View.GONE);
이렇게 사용하면 id가 button 인 버튼을 누르면
id가 first인 레이아웃은 보여지고
second 레이아웃은 보이지 않고 그냥 빈 공간만 나오게 되며
third 레이아웃은 아예 삭제된듯이 숨겨지게 된다.
그리고 버튼을 선택하기전에 초기상태에서 숨기려면 직접 xml 파일로 가서 해당 레이아웃에
android:visibility="gone"
옵션을 주면 처음부터 보여지지 않게 된다.
레이아웃 뿐만 아니라 버튼이나 이미지 뷰 텍스트 뷰 등등 여러가지도 적용할 수 있다.
- 이전글[안드로이드] 웹뷰로 구성된 화면 회전시 리로딩 방지하기 20.01.17
- 다음글안드로이드 이미지 버튼 배경 투명/이미지 크기 조정 20.01.16
댓글목록
등록된 댓글이 없습니다.