Onaanzienlijke Actie

This page is not available in the language you requested. You have been redirected to the English version of the page.
Link to this page copied to clipboard

Zorg ervoor dat interactieve elementen geactiveerd kunnen worden met TalkBack

Not for use with personal data
note

Dit is een experimentele regel en daarom worden de resultaten als bètatesten beschouwd. Lees meer over experimentele regels en hoe je kunt helpen deze te verbeteren.

WCAG 2.0 - 2.1.1 A Impact - Critical

Wat We Controleren

Een interactief element moet door assistieve technologie geactiveerd kunnen worden. Deze regel controleert of de actie gekoppeld aan een interactief element gefocust kan worden en geactiveerd kan worden met TalkBack of Switch Access.

Voorbeeld van een mislukking ❌

An Android Settings screen with a Notifications toggle focused by TalkBack (red border). TalkBack announces 'Notifications, on.' with no activation hint, indicating the action cannot be triggered.

TalkBack kan focus de 'Meldingen' schakelaar maar cannot activate it

TalkBack kondigt aan "Notifications, on." - geen rol of activeringshint is voorzien

Dubbel tikken doet niets; gebruikers hebben geen manier om de instelling te schakelen

Voorbeeld van succes ✅

An Android Settings screen with a Notifications toggle focused by TalkBack (green border). TalkBack announces 'Notifications, switch button, on. Double-tap to activate.' indicating the action is accessible.

TalkBack kan focus and activate de 'Meldingen' schakelaar

TalkBack kondigt aan "Notifications, switch button, on. Double-tap to activate."

De rol en activeringshint zijn aanwezig; gebruikers weten precies hoe ze met de controle moeten omgaan

In Een Oogopslag

  • Deze regel heeft een kritieke impact voor gebruikers
  • Deze regel markeert interactieve elementen waarop ondersteunende technologie niet kan focussen of die niet geactiveerd kunnen worden
  • Interactieve elementen zijn niet beschikbaar voor TalkBack wanneer ze als onbelangrijk voor toegankelijkheid worden gemarkeerd
  • Een klikbare ouder met kindelementen die tekst bevatten is niet toegankelijk wanneer deze voor ondersteunende technologie verborgen is

Impact Voor Gebruikers

Gebruikers van ondersteunende technologie worden het meest getroffen. Wanneer TalkBack op een interactief element kan focussen maar deze niet kan activeren, kunnen gebruikers mogelijk geen kritieke acties voltooien — zoals het indienen van een formulier, een instelling schakelen of naar een ander scherm navigeren. Dit creëert een complete barrière voor mensen die volledig afhankelijk zijn van ondersteunende technologie om met de app te communiceren.

note

De versie van Android, het apparaat en de fabrikant kunnen een rol spelen bij het detecteren van het probleem.

Bevestig Probleem met Onaanzienlijke Actie

  1. Schakel TalkBack of Switch Access in
  2. Probeer te focussen op en met het element te interageren
  3. Een van de volgende dingen gebeurt:
    • Niet Toegankelijk: Het element kan niet gefocust worden of zijn actie kan niet worden geactiveerd
    • Toegankelijk: Het element kan worden gefocust en zijn actie kan worden geactiveerd

Problemen Oplossen

Om een probleem met een Onaanzienlijke Actie op te lossen, zorg ervoor dat het interactieve element niet expliciet voor ondersteunende technologie verborgen is. Weergaven die mensen zonder ondersteunende technologie kunnen openen, moeten even toegankelijk zijn voor mensen die er gebruik van maken.

XML

Stel de eigenschap importantForAccessibility niet in op "no" bij aanraakbare weergaven. Als dit attribuut aanwezig is, verwijder het of stel het in op "yes" of "auto".

Compose

Markeer aanraakbare Compose-weergaven niet als invisibleToUser(). Verwijder deze modifier om ervoor te zorgen dat het element beschikbaar is voor TalkBack en Switch Access.

Button(onClick = {  },
    modifier = Modifier.semantics {
        // Remove invisibleToUser() to make this element accessible
        invisibleToUser()
    }
) {
    Text("Click here")
}


FloatingActionButton(onClick = {  }) {
    Image(
        painter = painterResource(id = R.drawable.floating_button),
        contentDescription = "floating button",
        Modifier.semantics { 
            // Remove invisibleToUser() to make this element accessible
            invisibleToUser() 
        }
    )
}

React Native

Dit probleem is ongebruikelijk voor standaard aanraakbare of drukbare bedieningselementen in React Native, maar kan optreden bij aangepaste interactieve elementen of wanneer importantForAccessibility expliciet is ingesteld op 'no' of 'no-hide-descendants' op een interactief element.

Optie 1: Laat de bovenliggende weergave de focus afhandelen

Stel de eigenschap importantForAccessibility van de omhullende weergave in op 'yes' en wijs de juiste accessibilityRole en accessibilityLabel toe. Stel importantForAccessibility in op 'no-hide-descendants' voor decoratieve kindelementen zodat TalkBack ze niet afzonderlijk focust:

<View
  importantForAccessibility='yes'
  accessibilityRole='button'
  accessibilityLabel='Learn more about Deque'
  onTouchStart={openLink}
>
  <Image 
    source={DequeLogo}
    importantForAccessibility='no-hide-descendants'
    style={{ width: 100, height: 100 }} 
  />
</View>

Optie 2: Laat het element zelf de focus afhandelen

Stel importantForAccessibility='yes' en accessibilityRole direct op de bedieningselementen in:

<Image
  source={DequeLogo}
  importantForAccessibility='yes'
  accessibilityRole='imagebutton'
  accessibilityLabel='Learn more about Deque'
  onTouchStart={openLink}
  style={{ width: 100, height: 100 }}
/>

Flutter

Flutter's Material-widgets (ElevatedButton, IconButton, enz.) maken tikacties automatisch toegankelijk voor de schermlezer. Bij het bouwen van aangepaste interactieve elementen met GestureDetector, wikkel ze in MergeSemantics met een Semantics widget om ervoor te zorgen dat de schermlezer het element kan ontdekken en activeren in één focusstap.

MergeSemantics(
  child: Semantics(
    button: true,
    label: 'Archive item',
    child: GestureDetector(
      onTap: () {},
      child: Container(
        padding: const EdgeInsets.all(12.0),
        color: Colors.green.shade100,
        child: const Text('Archive item'),
      ),
    ),
  ),
)

Kan ik deze regel negeren?

Onaanzienlijke actie heeft een Kritische impact voor gebruikers, en we raden sterk aan deze problemen op te lossen. Omdat dit een experimentele regel is, moet je resultaten handmatig verifiëren. Als je hebt bevestigd dat het element door TalkBack geactiveerd kan worden, kan het acceptabel zijn om de bevinding te negeren. Lees meer over regels negeren.

Bronnen

Deque University Cursuspagina's

Opmerking: Volledige toegang tot Deque University-bronnen vereist een abonnement.

Andere Bronnen