본문 바로가기

~2023

[Android/JAVA] FrameLayout에서 View 활성화/비활성화 하기

728x90
반응형

<실행 예시>

 

 


<풀이>

 

RadioButton을 누르면 해당 하는 배경색을 가진 TextView가 동일한 위치에서 나타나게 하고 싶어 FrameLayout을 사용했다. FrameLayout은 탭 메뉴를 만들 때 유용하기 때문에 사용법을 익혀 두면 좋다.

FrameLayout은 View 생성 위치가 같기 때문에 시각적으로는 맨 위에 있는 View만 보이고 Layout 안에 있는 View들은 그 아래에 겹쳐져 있다.

*RadioButton 클릭 이벤트는 (2021.10.29 - [Dev./Android] - [Android] RadioButton, RadioGroup 체크 이벤트(CheckedChange) 작동) 참고.

클릭 이벤트에서 버튼 클릭시 TextView들의 visibility 속성을 True/False로 유동적으로 바꿔주면 원하는 TextView만 보여줄 수 있다. 그래서 switch문을 통해 checkID와 동일한 TextView만 VISIBLE(활성화)하고 나머지 TextView는 INVISIBLE(비활성화) 해주면 된다.

 


<코드>

tvRed, tvGreen, tvBlue: FrameLayout 안에 있는 TextView 객체들


java
xml 1/1
xml 2/2

 

 

 

 

 

728x90
반응형