Użytkownicy często wchodzą w interakcję z aplikacją za pomocą mechanizmów wejścia innych niż dotyk:
- Środowiska na komputery: użytkownicy poruszają się po nich i wprowadzają dane za pomocą fizycznych klawiatur sprzętowych i touchpadów.
- Android TV: użytkownicy poruszają się po interfejsie za pomocą pada kierunkowego.
- Motoryzacja: kierowcy i pasażerowie korzystają z kontrolerów obrotowych.
- Urządzenia składane i tablety: użytkownicy podłączają klawiatury i zewnętrzne akcesoria do wprowadzania danych.
We wszystkich tych przypadkach aplikacja musi śledzić, który element interaktywny jest aktywny na ekranie. Ten stan aktywny nazywa się fokusem.
Kluczowe czynniki wpływające na intuicyjną nawigację za pomocą klawiatury
Aby zapewnić użytkownikom komfort korzystania z aplikacji na dużych ekranach i urządzeniach bez ekranu dotykowego, projektuj aplikacje zgodnie z tymi zasadami:
- Logiczne początkowe zaznaczenie: ustaw początkowe zaznaczenie na elemencie, z którym użytkownicy najprawdopodobniej wejdą w interakcję po wejściu na ekran.
- Spójna kolejność nawigacji: zapewnij przewidywalne przechodzenie fokusu w jednym wymiarze (Tab) i w dwóch wymiarach (klawisze strzałek lub pad kierunkowy).
- Trwałe ustawianie ostrości: płynne przywracanie ostrości po przerwaniu, zamknięciu okna dialogowego lub zmianie konfiguracji.
- Wyraźny stan zaznaczenia: wyświetlaj widoczne, dostępne wizualne wskazówki (np. pierścienie lub fale zaznaczenia), które wskazują, który element jest obecnie zaznaczony.
- Intuicyjne przewijanie: upewnij się, że element, na którym skupia się uwaga, i jego otoczenie płynnie przewijają się do widocznego obszaru.
Przewodniki po skupianiu
Zapoznaj się z tymi przewodnikami, aby dowiedzieć się, jak zarządzać ostrością i ją dostosowywać w trybie Komponowanie:
- Cele zaznaczenia: dowiedz się, jak komponenty interaktywne stają się celami zaznaczenia i jak sprawić, aby niestandardowe komponenty kompozycyjne można było zaznaczyć.
- Kolejność przechodzenia fokusu: poznaj kolejność wyświetlania 1D i nawigację przestrzenną 2D oraz dowiedz się, jak dostosować ścieżki przechodzenia.
- Skupianie się na polach tekstowych: dowiedz się, jak pola tekstowe jedno- i wielowierszowe obsługują klawisze Tab i strzałek oraz jak działa interakcja z edytorem IME na telewizorze.
- Grupowanie elementów docelowych: grupuj komponenty za pomocą
focusGroupi przechwytuj przekierowania wejścia lub wyjścia. - Przywracanie zaznaczenia: przywraca zaznaczenie wcześniej aktywnych elementów podrzędnych w kontenerach, obsługuje komponenty nawigacyjne i zarządza zaznaczeniem podczas przechodzenia między ekranami.
- Wskazywanie stanu zaznaczenia: stosuj wizualne wskazówki i niestandardowe oznaczenia, aby wyróżnić zaznaczone komponenty.
- Reagowanie na ostrość: obserwuj zmiany ostrości i wykonuj zapytania o właściwości stanu ostrości za pomocą
onFocusChanged. - Programowe żądanie zaznaczenia: wyraźnie przenosi zaznaczenie w odpowiedzi na działania użytkownika lub błędy weryfikacji.
- Przesuwanie i usuwanie zaznaczenia: programowe przesuwanie lub usuwanie zaznaczenia za pomocą
FocusManager. - Przechwytywanie i zwalnianie fokusu: przechwytywanie fokusu w przypadku interakcji podrzędnych w oknie modalnym i bezpieczne zwalnianie go.
- Testowanie nawigacji za pomocą zaznaczenia: pisz automatyczne testy Compose, aby weryfikować interakcje klawiatury w przypadku pól tekstowych 1D, 2D i pól tekstowych.
Polecane dla Ciebie
- Uwaga: tekst linku jest wyświetlany, gdy język JavaScript jest wyłączony.
- Punkty ostrości
- Kolejność przechodzenia między elementami
- Skupianie się na polach tekstowych
- Cele skupienia grupy
- Testowanie nawigacji za pomocą fokusu