ตัวช่วยเหลือสำหรับแป้นพิมพ์ลัด

ตัวช่วยเหลือสำหรับแป้นพิมพ์ลัดช่วยให้ผู้ใช้สามารถค้นพบแป้นพิมพ์ลัดสำหรับ แพลตฟอร์มและเปิดแอป เผยแพร่ทางลัดของแอปในตัวช่วยเหลือสำหรับแป้นพิมพ์ลัด เพื่อเพิ่มประสิทธิภาพการทำงาน และความสะดวกในการใช้งานของผู้ใช้

ผู้ใช้กด Meta+/ เพื่อเปิดหน้าจอแป้นพิมพ์ลัด พร้อมใช้งานใน Android 7.0 (API ระดับ 24) ขึ้นไป

วันที่ แอปพลิเคชันเปิดขึ้นในอุปกรณ์ที่แสดงทางลัดของระบบ
รูปที่ 1 ตัวช่วยเหลือสำหรับแป้นพิมพ์ลัด

แสดงแป้นพิมพ์ลัดไปยังตัวช่วยเหลือสำหรับแป้นพิมพ์ลัด

คุณสามารถระบุรายการแป้นพิมพ์ลัดที่พร้อมใช้งานเพื่อ ตัวช่วยเหลือสำหรับแป้นพิมพ์ลัดโดยการลบล้าง หน้าต่าง Callback onProvideKeyboardShortcuts() ข้อมูลโค้ดต่อไปนี้แสดงการใช้งาน onProvideKeyboardShortcuts() เพื่อเพิ่มกลุ่มทางลัด 4 รายการ:

class MainActivity : ComponentActivity() {
    // Activity codes such as overridden onStart method.

    override fun onProvideKeyboardShortcuts(
        data: MutableList<KeyboardShortcutGroup>?,
        menu: Menu?,
        deviceId: Int
    ) {
        val shortcutGroup = KeyboardShortcutGroup(
            "Cursor movement",
            listOf(
                KeyboardShortcutInfo("Up", KeyEvent.KEYCODE_P, KeyEvent.META_CTRL_ON),
                KeyboardShortcutInfo("Down", KeyEvent.KEYCODE_N, KeyEvent.META_CTRL_ON),
                KeyboardShortcutInfo("Forward", KeyEvent.KEYCODE_F, KeyEvent.META_CTRL_ON),
                KeyboardShortcutInfo("Backward", KeyEvent.KEYCODE_B, KeyEvent.META_CTRL_ON),
            )
        )
        data?.add(shortcutGroup)
    }
}

KeyboardShortcutInfo อธิบายแป้นพิมพ์ลัด รายการแป้นพิมพ์ลัดที่รวมเป็น KeyboardShortcutGroup แอปจะแจ้งแป้นพิมพ์ลัดที่พร้อมใช้งานไปยังตัวช่วยเหลือแป้นพิมพ์ลัดด้วยการเพิ่ม ผ่านออบเจ็กต์ KeyboardShortcutGroup ไปยังรายการที่เปลี่ยนแปลงได้แล้ว เป็นพารามิเตอร์แรกของเมธอด

จัดระเบียบแป้นพิมพ์ลัดด้วยกลุ่ม

โปรแกรมความช่วยเหลือสำหรับแป้นพิมพ์ลัดแสดงแป้นพิมพ์ลัดเป็นกลุ่มแยกกัน เพื่อให้ผู้ใช้ค้นหาทางลัดตามกรณีการใช้งานหรือสำหรับหน้าจอ แอปของคุณ รูปที่ 2 แสดงแป้นพิมพ์ลัด โดยแบ่งออกเป็น 2 กลุ่ม ได้แก่ การเคลื่อนที่ของเคอร์เซอร์และการแก้ไขข้อความ

วันที่ แอปพลิเคชันเปิดขึ้นในอุปกรณ์ที่แสดงกลุ่มทางลัด
รูปที่ 2 หมวดหมู่ในตัวช่วยเหลือแป้นพิมพ์ลัด

แอปของคุณจะลงทะเบียนแป้นพิมพ์ลัด 2 กลุ่มขึ้นไปโดยสร้าง KeyboardShortcutGroup รายการสำหรับแต่ละกลุ่ม ในข้อมูลโค้ดต่อไปนี้ มีการเพิ่มออบเจ็กต์ KeyboardShortCutGroup 2 รายการลงใน รายการที่เปลี่ยนแปลงได้ที่ส่งผ่านไปยังเมธอด onProvideKeyboardShortcuts() วัตถุจะแสดงเป็นหมวดหมู่ในโปรแกรมความช่วยเหลือแป้นพิมพ์ลัดเป็น รูปที่ 2

override fun onProvideKeyboardShortcuts(
    data: MutableList<KeyboardShortcutGroup>?,
    menu: Menu?,
    deviceId: Int
) {
    val cursorMovement = KeyboardShortcutGroup(
        "Cursor movement",
        listOf(
            KeyboardShortcutInfo("Up", KeyEvent.KEYCODE_P, KeyEvent.META_CTRL_ON),
            KeyboardShortcutInfo("Down", KeyEvent.KEYCODE_N, KeyEvent.META_CTRL_ON),
            KeyboardShortcutInfo("Forward", KeyEvent.KEYCODE_F, KeyEvent.META_CTRL_ON),
            KeyboardShortcutInfo("Backward", KeyEvent.KEYCODE_B, KeyEvent.META_CTRL_ON),
        )
    )

    val messageEdit = KeyboardShortcutGroup(
        "Message editing",
        listOf(
            KeyboardShortcutInfo("Select All", KeyEvent.KEYCODE_A, KeyEvent.META_CTRL_ON),
            KeyboardShortcutInfo("Send a message", KeyEvent.KEYCODE_ENTER, KeyEvent.META_SHIFT_ON)
        )
    )

    data?.add(cursorMovement)
    data?.add(messageEdit)
}

เปิดโปรแกรมช่วยเหลือสำหรับแป้นพิมพ์ลัดจากโค้ด

แอปจะแสดงหน้าจอแป้นพิมพ์ลัดตาม กำลังโทรหา requestShowKeyboardShortcuts() ในตัวอย่างต่อไปนี้ ตัวช่วยเหลือสำหรับแป้นพิมพ์ลัดจะเปิดขึ้นเมื่อผู้ใช้แตะ หรือคลิกปุ่มหรือกดแป้น Enter

val activity = LocalContext.current as Activity

Button(onClick = { activity.requestShowKeyboardShortcuts() }) {
    Text(text = "Show keyboard shortcuts")
}