Справочник по сочетаниям клавиш помогает пользователям находить сочетания клавиш для платформы и открытых приложений. Опубликуйте быстрые клавиши приложения в Помощнике по сочетаниям клавиш, чтобы пользователям было удобнее работать.
Чтобы открыть экран с быстрыми клавишами, пользователи нажимают Meta +/. Эта функция доступна в Android 7.0 (уровень API 24) и более поздних версиях.
Предоставлять ярлыки для Помощника по быстрым клавишам
Вы можете предоставить списки доступных быстрых клавиш в Помощник по быстрым клавишам, переопределив обратный вызов окна onProvideKeyboardShortcuts().
В следующем фрагменте кода показано, как с помощью onProvideKeyboardShortcuts() добавить группу из четырех ярлыков:
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 показаны быстрые клавиши, разделенные на две группы: перемещение курсора и редактирование сообщений.
Приложение регистрирует две или более групп сочетаний клавиш, создавая объект KeyboardShortcutGroup для каждой группы.
В следующем фрагменте кода два объекта KeyboardShortCutGroup добавляются в изменяемый список, передаваемый методу 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(). В следующем фрагменте кода Помощник по быстрым клавишам открывается, когда пользователь нажимает кнопку или клавишу Ввод.
val activity = LocalActivity.current Button( onClick = { activity?.requestShowKeyboardShortcuts() } ) { Text(text = "Show keyboard shortcuts") }