Навигация фокуса в compose
Use when writing or reviewing Jetpack Compose UI for TV, keyboard, desktop, accessibility focus, D-pad navigation, FocusRequester, focusProperties, key events, or initial focus behavior.
AIchrisbanes
official
Дизайн
Что делает навык
Навигация фокуса в Jetpack Compose для TV, десктопа и доступности. Управляет поведением фокуса, навигацией D-pad, запросами начального фокуса и обработкой событий клавиш.
Когда применять
- Настройка начального или восстановленного фокуса после загрузки контента
- Обработка событий клавиш и навигации D-pad для TV или десктопа
- Кастомизация пространственного поиска фокуса через focusProperties
- Тестирование поведения фокуса с использованием пользовательского ввода
Как работает
- Использовать FocusRequester и Modifier.focusRequester для программных запросов фокуса
- Вызывать запросы фокуса из LaunchedEffect, привязывая их к условиям появления целевого элемента
- Применять Modifier.onFocusChanged для реакции на изменения состояния фокуса
- Использовать Modifier.focusProperties только для исправления неверного пространственного поиска
- Обрабатывать клавиши через onPreviewKeyEvent, потребляя только обработанные события
- Тестировать поведение через performKeyInput и assertIsFocused в composeTestRule
Примеры запросов агенту
Настройте начальный фокус на кнопке 'Play' после загрузки списка элементов в Jetpack Compose
Обработайте нажатие клавиши Back в TV-интерфейсе, чтобы закрыть экран, используя onPreviewKeyEvent
Измените направление навигации D-pad для заголовка, чтобы фокус переходил на первую строку таблицы
Что понадобится
- Jetpack Compose UI
- Compose UI testing (composeTestRule)
- Среда разработки с поддержкой TV, десктопа или доступности
Описание составлено по SKILL.md навыка, сверено 05.10.2026.
Как подключить
1Скачать навык
# возьмите папку навыка «compose-focus-navigation» из репозитория:
# https://github.com/chrisbanes/skills
2Положить папку с
SKILL.md к навыкам ассистента# положите папку навыка туда, где ассистент ищет skills:
cp -r compose-focus-navigation/ ~/.claude/skills/compose-focus-navigation/
Навык — папка с файлом SKILL.md (описание + инструкции) и опциональными скриптами. Ассистент (Claude, Claude Code и совместимые) подхватывает его по описанию и следует шагам.