在應用程式中新增核取方塊

試用 Compose
Jetpack Compose 是 Android 推薦的 UI 工具包。瞭解如何在 Compose 中新增元件。

核取方塊可讓使用者從一組選項中選取一或多個選項。通常,系統會顯示核取方塊 。

顯示 material.io 核取方塊範例的圖片
圖 1. 核取方塊範例 Material Design 核取方塊

如要建立各個核取方塊選項,請建立一個 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>

版面配置準備就緒後,請前往 ActivityFragment,找出 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 中顯示訊息。