Outil d'aide pour les raccourcis clavier

L'outil d'aide aux raccourcis clavier permet aux utilisateurs de découvrir les raccourcis clavier pour les et ouvrir des applications. Publier les raccourcis de votre application dans l'outil d'aide pour améliorer la productivité des utilisateurs et la facilité d'utilisation.

Appuyez sur Méta+/ pour ouvrir l'écran des raccourcis clavier, disponible sur Android 7.0 (niveau d'API 24) ou version ultérieure.

Application ouverte sur un appareil affichant les raccourcis système.
Image 1. Outil d'aide aux raccourcis clavier.

Fournir des raccourcis vers l'outil d'aide des raccourcis clavier

Vous pouvez fournir des listes de raccourcis clavier disponibles pour de l'outil d'aide aux raccourcis clavier en remplaçant le paramètre Rappel de fenêtre onProvideKeyboardShortcuts() L'extrait de code suivant illustre une implémentation de onProvideKeyboardShortcuts() pour ajouter un groupe de quatre raccourcis:

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 décrit un raccourci clavier. La liste des raccourcis clavier s'affiche objet KeyboardShortcutGroup. Les applications signalent les raccourcis clavier disponibles à l'outil d'aide des raccourcis clavier en ajoutant les objets KeyboardShortcutGroup à la liste modifiable transmise comme premier paramètre de la méthode.

Organiser les raccourcis clavier en groupes

L'outil d'aide aux raccourcis clavier affiche les raccourcis clavier dans des groupes distincts afin que les utilisateurs puissent trouver des raccourcis par cas d'utilisation ou pour des écrans de votre application. La figure 2 illustre les raccourcis clavier. classées en deux groupes: le mouvement du curseur et l'édition de message.

Application ouverte sur un appareil affichant des groupes de raccourcis.
Figure 2 : Catégories dans l'outil d'aide aux raccourcis clavier.

Votre application enregistre au moins deux groupes de raccourcis clavier en créant un KeyboardShortcutGroup pour chaque groupe. Dans l'extrait suivant, deux objets KeyboardShortCutGroup sont ajoutés au liste modifiable transmise à la méthode onProvideKeyboardShortcuts(). Les objets sont affichés sous forme de catégories dans l'outil d'aide des raccourcis clavier sous la forme figure 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)
}

Ouvrir l'application d'aide sur les raccourcis clavier à partir du code

Les applications affichent l'écran des raccourcis clavier en appelant la méthode requestShowKeyboardShortcuts() . Dans l'extrait suivant, l'outil d'aide sur les raccourcis clavier s'ouvre lorsque l'utilisateur appuie sur ou cliquez sur le bouton ou appuyez sur la touche Entrée.

val activity = LocalContext.current as Activity

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