Tous les composants Glimmer de Jetpack Compose sont conçus pour fonctionner avec des méthodes d'entrée standards semblables à celles des téléphones, comme un appui ou un balayage sur le pavé tactile des lunettes d'IA. Ils sont également compatibles avec les commandes d'entrée spécifiques au matériel des lunettes d'IA, comme les boutons de l'appareil photo et de l'écran. Les composants Glimmer de Jetpack Compose gèrent automatiquement les événements d'entrée nécessaires. Pour les composants
personnalisés, vous pouvez utiliser des API Compose existantes telles que
Modifier.draggable ou Modifier.scrollable pour implémenter des comportements d'interaction
spécifiques.
Sur les lunettes d'IA avec écran, l'entrée du pointeur peut affecter le focus :
- Appuyer : interaction directe pour activer un élément. Le focus se déplace vers un élément lorsqu'un utilisateur interagit avec lui.
- Balayer : utilisé pour la navigation et le défilement. Les gestes de balayage non gérés se traduisent automatiquement par des mouvements de focus, ce qui permet une navigation fluide dans l'interface utilisateur sans entrée directe du pointeur.
Comportement et ordre de navigation
Le mouvement et l'ordre du focus changent lorsqu'un utilisateur navigue dans votre application.
Mouvement du focus
Sur un conteneur déroulant, le focus se déplace en continu avec un balayage sur le pavé tactile. Pour les éléments discrets comme une ligne de boutons, chaque balayage déplace le focus d'un élément à la fois.
Ordre du focus
Comme dans Jetpack Compose, Jetpack Compose Glimmer utilise une recherche de focus unidimensionnelle. Pour en savoir plus sur l'ordre de navigation du focus, consultez Modifier l'ordre de navigation du focus.
Pour modifier l'élément initialement mis en focus, vous pouvez ajouter un
Modifier.focusGroup() et spécifier un onEnter
focusProperty personnalisé :
Modifier.focusProperties {
onEnter = {
initialFocus.requestFocus()
cancelFocusChange()
}
}
.focusGroup()
Conteneurs déroulants
Pour une expérience utilisateur optimale, les conteneurs déroulants tels que les listes doivent être le seul composant majeur d'un écran. Évitez de placer une liste déroulante directement au-dessus ou en dessous d'autres éléments interactifs, tels que des boutons, pour éviter toute confusion dans la navigation et favoriser un mouvement de focus fluide et prévisible.
États de focus par défaut
Jetpack Compose Glimmer implémente des états de focus par défaut dans ses composants interactifs, y compris les surfaces, les cartes et les éléments de liste, ce qui favorise un retour visuel cohérent et clair lors de l'interaction de l'utilisateur.
Par défaut : la couleur d'arrière-plan du bouton est dérivée de
GlimmerTheme.colors.surface, son contenu principal calcule la couleur de contenu de cette surface et les icônes sontGlimmerTheme.colors.primary.Focus : la largeur de la bordure est augmentée pour communiquer le focus.
Focus + Appuyé : l'arrière-plan est défini sur
GlimmerTheme.colors.surfaceavec une opacité totale pour communiquer son état sélectionné.