Alle Jetpack Compose Glimmer-Komponenten sind für die Verwendung mit Standardeingabemethoden wie Tippen oder Wischen auf dem Touchpad der Brille konzipiert. Sie reagieren aber auch auf Eingabebefehle auf niedrigerer Ebene, die spezifisch für die Hardware von Displaybrillen sind. Die Jetpack Compose Glimmer-Komponenten verarbeiten die erforderlichen Eingabeereignisse automatisch.
Verwenden Sie für Standardaktionen wie Scrollen und Ziehen die Jetpack Compose Glimmer-Komponenten, um eine einheitliche Nutzererfahrung zu bieten. Für benutzerdefinierte Komponenten oder
spezielle Interaktionsverhalten können Sie jedoch vorhandene Compose APIs wie
Modifier.draggable oder Modifier.scrollable verwenden.
Zeigereingabe und Fokus
Bei Displaybrillen kann die Zeigereingabe den Fokus beeinflussen:
- Tippen: Direkte Interaktion zum Aktivieren eines Elements. Der Fokus wird auf ein Element verschoben, wenn ein Nutzer damit interagiert.
- Wischen: Wird für die Navigation und zum Scrollen verwendet. Nicht verarbeitete Wischgesten werden automatisch in Fokusbewegungen umgewandelt, sodass eine nahtlose UI-Navigation ohne direkte Zeigereingabe möglich ist.
Navigationsverhalten und -reihenfolge
Die Fokusbewegung und -reihenfolge ändern sich, wenn ein Nutzer in Ihrer App navigiert.
Fokusbewegung
In einem scrollbaren Container bewegt sich der Fokus kontinuierlich mit einer Wischbewegung auf dem Touchpad. Bei einzelnen Elementen wie einer Reihe von Schaltflächen wird der Fokus mit jeder Wischbewegung um ein Element verschoben.
Fokusreihenfolge
Wie in Jetpack Compose verwendet Jetpack Compose Glimmer die eindimensionale Fokussuche. Weitere Informationen zur Reihenfolge der Fokusbewegung finden Sie unter Fokusbewegung Reihenfolge ändern.
Wenn Sie das Element ändern möchten, auf das der Fokus anfänglich gesetzt wird, können Sie ein
Modifier.focusGroup() auf oberster Ebene hinzufügen und eine benutzerdefinierte onEnter
focusProperty angeben:
Modifier.focusProperties {
onEnter = {
initialFocus.requestFocus()
// Prevent focus from exiting the group
cancelFocusChange()
}
}
.focusGroup()
Scrollen in Containern
Für eine optimale Nutzererfahrung sollten scrollbare Container wie Listen die einzige Hauptkomponente auf einem Bildschirm sein. Platzieren Sie scrollbare Listen nicht direkt über oder unter anderen interaktiven Elementen wie Schaltflächen, um Verwirrung bei der Navigation zu vermeiden und eine reibungslose, vorhersehbare Fokusbewegung zu ermöglichen.
Standardfokusstatus
Jetpack Compose Glimmer implementiert Standardfokusstatus für alle interaktiven Komponenten, einschließlich Oberflächen, Karten und Listenelementen. So wird ein einheitliches und klares visuelles Feedback bei der Nutzerinteraktion ermöglicht.
Standard: Die Hintergrundfarbe der Schaltfläche wird von
GlimmerTheme.colors.surfaceabgeleitet. Der Hauptinhalt berechnet die Farbe des Inhalts dieser Oberfläche.Fokus: Die Rahmenbreite wird erhöht, um den Fokus zu kennzeichnen.
Fokus + gedrückt: Der Hintergrund wird auf
GlimmerTheme.colors.surfacemit erhöhter Deckkraft gesetzt, um den ausgewählten Status zu kennzeichnen.