ปุ่มเป็นองค์ประกอบพื้นฐานที่ช่วยให้ผู้ใช้เรียกใช้การดำเนินการที่กำหนดไว้ได้ ปุ่มมี 5 ประเภท ตารางนี้อธิบายลักษณะของปุ่มทั้ง 5 ประเภท รวมถึงตำแหน่งที่ควรใช้ปุ่มแต่ละประเภท
| ประเภท | ลักษณะที่ปรากฏ | วัตถุประสงค์ |
|---|---|---|
| ทึบ | พื้นหลังสีทึบพร้อมข้อความที่ตัดกัน | ปุ่มที่เน้นสูง ใช้สำหรับการดำเนินการหลักในแอปพลิเคชัน เช่น "ส่ง" และ "บันทึก" เอฟเฟกต์เงาจะไฮไลต์ความสำคัญของปุ่ม |
| แบบทึบและคุมโทน | สีพื้นหลังจะแตกต่างกันไปตามแพลตฟอร์ม | นอกจากนี้ยังใช้สำหรับการดำเนินการหลักหรือการดำเนินการที่สำคัญด้วย ปุ่มแบบเต็มสีโทนเดียวกันจะให้น้ำหนักของสายตามากกว่าและเหมาะกับฟังก์ชันต่างๆ เช่น "เพิ่มลงในรถเข็น" และ "ลงชื่อเข้าใช้" |
| สูงกว่าปกติ | โดดเด่นด้วยการมีเงา | มีวัตถุประสงค์คล้ายกับปุ่มโทนสี เพิ่มระดับความสูงเพื่อให้ปุ่มโดดเด่นยิ่งขึ้น |
| เติมขอบ | มีเส้นขอบแต่ไม่มีการเติมสี | ปุ่มที่เน้นปานกลางซึ่งมีการดำเนินการที่สำคัญแต่ไม่ใช่การดำเนินการหลัก ปุ่มประเภทนี้เหมาะที่จะใช้ร่วมกับปุ่มอื่นๆ เพื่อระบุการดำเนินการรองที่เป็นทางเลือก เช่น "ยกเลิก" หรือ "กลับ" |
| ข้อความ | แสดงข้อความโดยไม่มีพื้นหลังหรือเส้นขอบ | ปุ่มที่เน้นน้อย เหมาะสำหรับการดำเนินการที่มีความสำคัญน้อยกว่า เช่น ลิงก์การนำทาง หรือฟังก์ชันรอง เช่น "ดูข้อมูลเพิ่มเติม" หรือ "ดูรายละเอียด" |
รูปภาพนี้แสดงปุ่ม 5 ประเภทใน Material Design
แพลตฟอร์ม API
onClick- ฟังก์ชันที่ระบบเรียกใช้เมื่อผู้ใช้กดปุ่ม
enabled- เมื่อ
falseพารามิเตอร์นี้จะทำให้ปุ่มปรากฏเป็นไม่พร้อมใช้งานและไม่ทำงาน colors- อินสแตนซ์ของ
ButtonColorsที่กำหนดสีที่ใช้ในปุ่ม contentPadding- ระยะห่างจากขอบภายในปุ่ม
ปุ่มแบบทึบ
คอมโพเนนต์ปุ่มที่เติมสีจะใช้ Composable Button พื้นฐาน โดยค่าเริ่มต้น พื้นหลังจะเป็นสีทึบ ข้อมูลโค้ดแสดงวิธีใช้คอมโพเนนต์และแสดงตัวอย่างแบบอินเทอร์แอกทีฟ
@Composable fun FilledButtonExample(onClick: () -> Unit) { Button(onClick = { onClick() }) { Text("Filled") } }
ปุ่มโทนสีแบบเติม
คอมโพเนนต์ปุ่มแบบเติมสีโทนเดียวใช้คอมโพสิเบิล FilledTonalButton
โดยค่าเริ่มต้นจะเติมด้วยสีโทนเดียว
ข้อมูลโค้ดแสดงวิธีใช้คอมโพเนนต์และแสดงตัวอย่างแบบอินเทอร์แอกทีฟ
@Composable fun FilledTonalButtonExample(onClick: () -> Unit) { FilledTonalButton(onClick = { onClick() }) { Text("Tonal") } }
ปุ่มแบบมีเส้นขอบ
คอมโพเนนต์ปุ่มที่มีเส้นขอบใช้ OutlinedButton Composable โดยจะปรากฏพร้อมกับเส้นขอบโดยค่าเริ่มต้น
ข้อมูลโค้ดแสดงวิธีใช้คอมโพเนนต์และแสดงตัวอย่างแบบอินเทอร์แอกทีฟ
@Composable fun OutlinedButtonExample(onClick: () -> Unit) { OutlinedButton(onClick = { onClick() }) { Text("Outlined") } }
ปุ่มแบบยกสูง
คอมโพเนนต์ปุ่มที่ยกขึ้นจะใช้ ElevatedButton Composable โดยจะมีเงาที่แสดงถึงเอฟเฟกต์ระดับความสูงโดยค่าเริ่มต้น เป็นปุ่มแบบเติมสีที่มีเงา
ข้อมูลโค้ดแสดงวิธีใช้คอมโพเนนต์และแสดงตัวอย่างแบบอินเทอร์แอกทีฟ
@Composable fun ElevatedButtonExample(onClick: () -> Unit) { ElevatedButton(onClick = { onClick() }) { Text("Elevated") } }
ปุ่มข้อความ
คอมโพเนนต์ปุ่มข้อความใช้ TextButton Composable โดยจะปรากฏเป็นข้อความเท่านั้นจนกว่าจะกด โดยค่าเริ่มต้นจะไม่มีการเติมสีทึบหรือเส้นขอบ
ข้อมูลโค้ดแสดงวิธีใช้คอมโพเนนต์และแสดงตัวอย่างแบบอินเทอร์แอกทีฟ
@Composable fun TextButtonExample(onClick: () -> Unit) { TextButton( onClick = { onClick() } ) { Text("Text Button") } }