체크박스를 사용하면 사용자가 세트에서 하나 이상의 옵션을 선택할 수 있습니다. 일반적으로 체크박스 옵션은 세로 목록에 표시합니다.
각 체크박스 옵션을 만들려면 레이아웃에서 CheckBox
를 만듭니다. 체크박스 옵션 세트를 사용하면 사용자가 여러 항목을 선택할 수 있으므로 각 체크박스를 따로 관리하고 각 체크박스의 클릭 리스너를 등록해야 합니다.
클릭 이벤트에 응답
먼저 목록에 CheckBox
객체가 있는 레이아웃을 만듭니다.
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <CheckBox android:id="@+id/checkbox_meat" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Meat" /> <CheckBox android:id="@+id/checkbox_cheese" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Cheese"/> </LinearLayout>
레이아웃이 준비되면 Activity
또는 Fragment
로 이동하여 CheckBox
뷰를 찾고 다음 예와 같이 변경 리스너를 설정합니다.
Kotlin
findViewById<CheckBox>(R.id.checkbox_meat) .setOnCheckedChangeListener { buttonView, isChecked -> Log.d("CHECKBOXES", "Meat is checked: $isChecked") } findViewById<CheckBox>(R.id.checkbox_cheese) .setOnCheckedChangeListener { buttonView, isChecked -> Log.d("CHECKBOXES", "Cheese is checked: $isChecked") }
자바
findViewById<CheckBox>(R.id.checkbox_meat) .setOnCheckedChangeListener { buttonView, isChecked -> Log.d("CHECKBOXES", "Meat is checked: $isChecked"); } findViewById<CheckBox>(R.id.checkbox_cheese) .setOnCheckedChangeListener { buttonView, isChecked -> Log.d("CHECKBOXES", "Cheese is checked: $isChecked"); }
이전 코드는 체크박스의 상태가 변경될 때마다 Logcat에 메시지를 출력합니다.