Nicht zugängliche Aktion
Stellen Sie sicher, dass interaktive Elemente mit TalkBack aktiviert werden können
Dies ist eine experimentelle Regel und daher werden die Ergebnisse als Betatest angesehen. Erfahren Sie mehr über experimentelle Regeln und wie Sie helfen können, sie zu verbessern.
Was wir überprüfen
Ein interaktives Element sollte von assistiver Technologie aktiviert werden können. Diese Regel überprüft, dass die mit einem interaktiven Element verbundene Aktion fokussiert und und mit TalkBack oder Switch Access ausgelöst werden kann.
Fehlgeschlagenes Beispiel ❌
TalkBack kann focus den 'Benachrichtigungen'-Schalter ankündigen, aber cannot activate it
TalkBack meldet "Notifications, on." - keine Rolle oder Aktivierungshinweis wird bereitgestellt
Doppeltippen bewirkt nichts; Benutzer können die Einstellung nicht umschalten
Erfolgreiches Beispiel ✅
TalkBack kann focus and activate den 'Benachrichtigungen'-Schalter ankündigen
TalkBack meldet "Notifications, switch button, on. Double-tap to activate."
Die Rolle und der Aktivierungshinweis sind vorhanden; Benutzer wissen genau, wie sie mit der Steuerung interagieren können
Auf einen Blick
- Diese Regel hat eine kritische Wirkung für Benutzer
- Diese Regel markiert interaktive Elemente, die von assistiver Technologie nicht fokussiert oder aktiviert werden können
- Interaktive Elemente sind für TalkBack nicht verfügbar, wenn sie als nicht wichtig für Barrierefreiheit markiert sind
- Ein klickbares Elternelement mit Kindelementen, die Text haben, ist unzugänglich, wenn es vor assistiver Technologie verborgen ist
Auswirkungen auf die Benutzer
Benutzer von assistiver Technologie sind am stärksten betroffen. Wenn TalkBack ein interaktives Element fokussieren kann, es jedoch nicht aktivieren kann, sind Benutzer möglicherweise nicht in der Lage, kritische Aktionen auszuführen – wie das Absenden eines Formulars, das Umschalten einer Einstellung oder das Navigieren zu einem anderen Bildschirm. Dies stellt eine vollständige Barriere für Menschen dar, die ausschließlich auf assistive Technologie angewiesen sind, um mit der App zu interagieren.
Die Android-Version, das Gerät und der Hersteller können eine Rolle bei der Erkennung von Problemen spielen.
Nicht zugängliche Aktion bestätigen
- Aktivieren Sie TalkBack oder Switch Access
- Versuchen Sie, das Element zu fokussieren und mit ihm zu interagieren
- Eines der folgenden Dinge wird passieren:
- Nicht zugänglich: Das Element kann nicht fokussiert oder seine Aktion nicht ausgelöst werden
- Zugänglich: Das Element wird fokussiert und seine Aktion kann ausgelöst werden
Probleme beheben
Um ein Problem mit einer nicht zugänglichen Aktion zu lösen, stellen Sie sicher, dass das interaktive Element nicht ausdrücklich vor assistiver Technologie verborgen ist. Ansichten, die ohne assistive Technologie zugänglich sind, sollten gleichermaßen für diejenigen verfügbar sein, die sie verwenden.
XML
Setzen Sie die importantForAccessibility-Eigenschaft nicht auf "no" in ansichtstastbaren Elementen. Wenn dieses Attribut vorhanden ist, entfernen Sie es oder setzen Sie es auf "yes" oder "auto".
Compose
Markieren Sie ansichtstastbare Compose-Elemente nicht als invisibleToUser(). Entfernen Sie diesen Modifikator, um sicherzustellen, dass das Element für TalkBack und Switch Access verfügbar ist.
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
Dieses Problem ist bei standardmäßigen berührbaren oder drückbaren Steuerelementen in React Native ungewöhnlich, kann jedoch bei benutzerdefinierten interaktiven Elementen auftreten oder wenn importantForAccessibility explizit auf 'no' oder 'no-hide-descendants' gesetzt ist.
Option 1: Dem übergeordneten Element erlauben, den Fokus zu bearbeiten
Setzen Sie den importantForAccessibility des enthaltenen Elements auf 'yes' und weisen Sie die entsprechenden accessibilityRole und accessibilityLabel zu. Setzen Sie importantForAccessibility auf 'no-hide-descendants' bei allen dekorativen Kindelementen, damit TalkBack sie nicht separat fokussiert:
<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>Option 2: Dem Element selbst erlauben, den Fokus zu bearbeiten
Setzen Sie importantForAccessibility='yes' und accessibilityRole direkt auf die Steuerung:
<Image
source={DequeLogo}
importantForAccessibility='yes'
accessibilityRole='imagebutton'
accessibilityLabel='Learn more about Deque'
onTouchStart={openLink}
style={{ width: 100, height: 100 }}
/>Flutter
Flutters Material-Widgets (ElevatedButton, IconButton usw.) machen Tap-Aktionen automatisch für den Screenreader verfügbar. Beim Erstellen benutzerdefinierter interaktiver Elemente mit GestureDetector umgeben Sie sie mit MergeSemantics und einem Semantics-Widget, damit der Screenreader das Element in einem einzigen Fokusstop entdecken und aktivieren kann.
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'),
),
),
),
)Kann ich diese Regel ignorieren?
Nicht zugängliche Aktion hat eine Kritische Auswirkung für Benutzer, und wir empfehlen dringend, diese Probleme zu beheben. Da dies eine experimentelle Regel ist, sollten Sie die Ergebnisse manuell überprüfen. Wenn Sie bestätigt haben, dass das Element von TalkBack aktiviert werden kann, kann es akzeptabel sein, den Befund zu ignorieren. Erfahren Sie mehr über Regeln ignorieren.
Ressourcen
Deque University Kursseiten
Hinweis: Der vollständige Zugriff auf die Ressourcen von Deque University erfordert ein Abonnement.
Weitere Ressourcen
- Richtlinien für barrierefreie Webinhalte (WCAG) 2.1, W3C-Empfehlung
- WCAG 2.1 Verständnis-Dokumente
