Traverseringsrekkefølge

Formål

En person som bruker TalkBack-skjermleseren, kan navigere en app på to måter:

  • Berøringsutforsking: Dra en finger over skjermen for å utforske oppsettet av elementene i forhold til hverandre.
  • Lineær navigering: Sveip til høyre og venstre for å gå frem og tilbake, ett element om gangen. 

Android-apper bør ha støtte for både berøringsutforsking og lineær navigering. Traverseringsrekkefølgen ved lineær navigering bør generelt samsvare med den visuelle rekkefølgen. Eventuelt kan traverseringsrekkefølgen optimaliseres på en annen måte som virker logisk for skjermleserbrukere.  

Som standard bruker TalkBack appens visningshierarki for å bestemme traverseringsrekkefølgen av elementer ved lineær navigering.

Implementering

I tilfeller der visningshierarkiet til en app ikke gjenspeiler den logiske strukturen i appen, kan utviklere påvirke traverseringsrekkefølgen for tilgjengelighetstjenester ved å bruke android:accessibilityTraversalBefore eller android:accessibilityTraversalAfter. Med disse egenskapene kan du angi at skjermlesere bør fokusere på innholdet i én visning før (eller etter) innholdet til en annen. Visninger uten før/etter-forhold traverseres i en rekkefølge som avgjøres av skjermleseren.

Traverseringsrekkefølgen for tilgjengelighetstjenester er forskjellig fra rekkefølgen for «inndatafokus» som brukes til tastaturnavigasjon. Rekkefølgen for tastaturnavigasjon spesifiseres via android:nextFocusDown, android:nextFocusLeft, android:nextFocusRight og android:nextFocusUp.

Når du bruker accessibilityTraversalBefore og accessibilityTraversalAfter, bør du ha følgende tips i bakhodet for å unngå å begrense traverseringsrekkefølgen mer enn nødvendig:

  • Bare bruk disse attributtene på steder der logisk rekkefølge er forskjellig fra rekkefølgen for visningshierarkiet.
  • Hvert element som en bruker kan fokusere på med berøringsutforsking, bør også være fokuserbart ved lineær navigering.
  • Traverseringsrekkefølgen bør være i samsvar med den lineære navigeringen, uavhengig av retning. Eksempel: En bevegelse for å flytte fokus til «neste» element umiddelbart etterfulgt av en bevegelse for å flytte fokus til «forrige» element bør alltid føre til at fokuset går tilbake til elementet brukeren var på før disse to bevegelsene.
  • Du bør ikke innføre sykluser når du definerer accessibilityTraversalBefore og accessibilityTraversalAfter, hvis ikke kan brukere oppleve situasjoner der enkelte elementer ikke er tilgjengelig når de bruker lineær navigering.

Design

Når du utformer en app, bør du tenke på hvordan en person som bruker en skjermleser og lineær traversering, skal få informasjonen i grensesnittet. Ideelt sett samsvarer traverseringsrekkefølgen med den visuelle presentasjonen av informasjonen. Når du ikke får dette til å samsvare, kan du imidlertid angi en traverseringsrekkefølge som formidler den logiske strukturen eller hensikten med grensesnittet.

Finn ut mer om å lage navigasjon som er enkel å følge.

Testing

Slik evaluerer du traverseringsrekkefølgen for tilgjengelighetstjenester i en app manuelt:

  1. Slå på TalkBack.
  2. Åpne appen.
  3. Bruk lineære navigasjonsbevegelser til å flytte tilgjengelighetsfokuset til hvert element på skjermen.
  4. Kontrollér at TalkBack flytter fokuset gjennom elementene på skjermen i en logisk rekkefølge, og at det som leses opp høyt, er meningsfylte representasjoner av hvert av elementene TalkBack går til.
  5. Kontrollér at TalkBack flytter fokuset bakover og fremover gjennom elementene på skjermen på en konsekvent måte, uavhengig av navigasjonsretning.

Androids automatiserte testverktøy kan oppdage enkelte problemer med traverseringsrekkefølgen. Vurder å bruke Accessibility Scanner for Android for manuell testing av appen din på en enhet. For å utføre automatisk testing slår du på tilgjengelighetssjekking i Espresso og Robolectric.

Søk
Slett søket
Lukk søkefunksjonen
Hovedmeny
8974934494102713419
true
Søk i brukerstøtte
true
true
true
true
true
717068
false
false