[안드로이드 어플 개발] 라디오버튼(RadioButton)
안드로이드 라디오버튼(RadioButton) |
■ 안드로이드 버튼중에서 이번에는 RadioButton에 대해서 알아보도록 하겠습니다. 이것은 체크박스와 비슷하지만 한번 체크한것은 다시 Off시키지 못하는 점이 다른데요. 간단한 예제를 하나 만들어보고 어떻게 다른지 살펴 보도록 하겠습니다.
■ 상속관계를 살펴보면...
■ 먼저 프로젝트를 하나 생성하고 xml파일에 라디오 버튼을 두개 배치하고 그 밑에 텍스트뷰를 배치하고 선택한 결과가 출력되도록 하겠습니다. 그래픽 레이아웃에서 텍스트뷰와 라디오버튼을 추가했습니다. 마지막 지난 포스팅때 만들어놓은 라운드 박스를 배경으로 배치하였습니다.
■ main.xml소스를 살펴보도록 하겠습니다.
■ 모두 원래 객체의 크기를 유지하게 했고, 마지막에 출력되는 부분만 가로폭을 화면에 꽉 차도록 했습니다 (fill_parent). 그리고 배경은 round_box로 한걸 확인할 수 있습니다.
■ 이제 매인 엑티비티에서 클릭이벤트를 추가해보겠습니다.
■ 배치한 두개의 라디오 버튼을 아이디 값으로 찾아서 클릭 이벤트를 작성한 내용인데요. 이 두 버튼이 클릭이 되면 printChecked()메서드가 실행이 되게 됩니다. 다음으로 printChecked()메서드를 정의해보겠습니다. 이 메서드는 선택된 내용을 텍스트뷰에 출력하도록 하는 기능을 하게 됩니다.
■ 소스 내용을 살펴보면 두개의 라디오버튼을 아이디값으로 찾아서 rb1, rb2 라는 객체에 담고 문자열 String객체를 공백으로 초기화합니다. 첫번째 버튼을 클릭하면 String값에 그 버튼의 내용을 담고, 두번째 버튼을 클릭할때는 앞에 선택된 내용이 있으면 ','를 추가하고 뒤 이어서 두번째 버튼의 내용을 출력하는 내용입니다. 실행을 해보겠습니다.
■ 두개 모두를 선택한 화면인데요. 서두에서도 설명했지만 라디오버튼은 한번 선택을 하면 다시 체크 해제를 할 수 없습니다.