ปุ่มตัวเลือกให้ผู้ใช้เลือก 1 ตัวเลือกจากชุดตัวเลือกที่เกี่ยวข้องกันได้ ตัวเลือก ใช้ปุ่มตัวเลือกหากผู้ใช้ต้องการดูตัวเลือกที่ใช้ได้ทั้งหมด อยู่ในรายการ ถ้าไม่จำเป็นต้องแสดงตัวเลือกทั้งหมด ให้ใช้ ตัวหมุน แทน
ในการสร้างตัวเลือกปุ่มตัวเลือกแต่ละรายการ ให้สร้าง
RadioButton
ในเลย์เอาต์ของคุณ เนื่องจากปุ่มตัวเลือกทำงานแยกกันได้ โปรดจัดกลุ่มไว้ภายใน
CANNOT TRANSLATE
RadioGroup
ระบบจะตรวจสอบว่าเลือกปุ่มตัวเลือกภายในกลุ่มได้เพียงปุ่มเดียวที่
หนึ่งครั้ง
ตอบสนองต่อกิจกรรมการคลิก
เมื่อผู้ใช้เลือกปุ่มตัวเลือก
ออบเจ็กต์ RadioButton
ได้รับเหตุการณ์เมื่อคลิก
ตัวอย่างต่อไปนี้แสดงปฏิกิริยาเมื่อผู้ใช้แตะ
ออบเจ็กต์ RadioButton
รายการในกลุ่ม:
<?xml version="1.0" encoding="utf-8"?> <RadioGroup android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical"> <RadioButton android:id="@+id/radio_pirates" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Pirates"/> <RadioButton android:id="@+id/radio_ninjas" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Ninjas"/> </RadioGroup>
ภายใน Activity
หรือ Fragment
ที่โฮสต์รายการนี้
หาปุ่มตัวเลือกของคุณ และตั้งค่า Listener สำหรับเปลี่ยนสำหรับแต่ละปุ่ม เช่น
ดังต่อไปนี้:
Kotlin
findViewById<RadioButton>(R.id.radio_pirates).setOnCheckedChangeListener { buttonView, isChecked -> Log.d("RADIO", "Pirates is checked: $isChecked") } findViewById<RadioButton>(R.id.radio_ninjas).setOnCheckedChangeListener { buttonView, isChecked -> Log.d("RADIO", "Ninjas is checked: $isChecked") }
Java
findViewById<RadioButton>(R.id.radio_pirates).setOnCheckedChangeListener { buttonView, isChecked -> Log.d("RADIO", "Pirates is checked: $isChecked"); } findViewById<RadioButton>(R.id.radio_ninjas).setOnCheckedChangeListener { buttonView, isChecked -> Log.d("RADIO", "Ninjas is checked: $isChecked"); }
ในตัวอย่างนี้ เมื่อผู้ใช้แตะปุ่มตัวเลือกปุ่มใดปุ่มหนึ่ง จะมีข้อความ พิมพ์ใน Logcat