チェックボックスを使用すると、ユーザーは選択肢のセットから 1 つ以上を選択できます。通常、チェックボックスの選択肢は縦長のリストに表示します。
チェックボックスの各オプションを作成するには、レイアウトに 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") }
Java
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 にメッセージが出力されます。