Hat eine gültige Zugänglichkeitsrolle
Regel, die verlangt, dass React Native-Komponenten eine gültige accessibilityRole-Eigenschaft verwenden
Regel-ID: hat-gueltige-zugaenglichkeitsrolle
accessibilityRole kommuniziert den Zweck einer Komponente an den Benutzer von unterstützender Technologie.
accessibilityRole kann eine der folgenden sein:
adjustableWird verwendet, wenn ein Element "angepasst" werden kann (z. B. ein Schieberegler).alertWird verwendet, wenn ein Element wichtigen Text enthält, der dem Benutzer präsentiert werden soll.buttonWird verwendet, wenn das Element als Schaltfläche behandelt werden soll.checkboxWird verwendet, wenn ein Element ein Kontrollkästchen darstellt, das aktiviert, deaktiviert oder gemischt aktiviert sein kann.comboboxWird verwendet, wenn ein Element ein Kombinationsfeld darstellt, das es dem Benutzer ermöglicht, zwischen mehreren Optionen zu wählen.headerWird verwendet, wenn ein Element als Kopfzeile für einen Inhaltsbereich fungiert (z. B. der Titel einer Navigationsleiste).imageWird verwendet, wenn das Element als Bild behandelt werden soll. Kann mit einer Schaltfläche oder einem Link kombiniert werden.imagebuttonWird verwendet, wenn das Element als Schaltfläche behandelt werden soll und gleichzeitig ein Bild ist.keyboardkeyWird verwendet, wenn das Element als Tastaturtaste fungiert.linkWird verwendet, wenn das Element als Link behandelt werden soll.menuWird verwendet, wenn die Komponente ein Menü von Auswahlmöglichkeiten ist.menubarWird verwendet, wenn eine Komponente ein Container für mehrere Menüs ist.menuitemWird verwendet, um ein Element innerhalb eines Menüs darzustellen.noneWird verwendet, wenn das Element keine Rolle hat.progressbarWird verwendet, um eine Komponente darzustellen, die den Fortschritt einer Aufgabe anzeigt.radioWird verwendet, um eine Optionsschaltfläche darzustellen.radiogroupWird verwendet, um eine Gruppe von Optionsschaltflächen darzustellen.scrollbarWird verwendet, um eine Scrollleiste darzustellen.searchWird verwendet, wenn ein Textelement auch als Suchfeld behandelt werden soll.spinbuttonWird verwendet, um eine Schaltfläche darzustellen, die eine Liste von Auswahlmöglichkeiten öffnet.summaryWird verwendet, wenn ein Element eine kurze Übersicht über die aktuellen Bedingungen in der App geben kann, wenn die App gestartet wird.switchWird verwendet, um einen Schalter darzustellen, der ein- und ausgeschaltet werden kann.tabWird zur Darstellung einer Registerkarte verwendet.tablistWird zur Darstellung einer Liste von Registerkarten verwendet.textWird verwendet, wenn das Element als statischer Text behandelt werden sollte, der sich nicht ändern kann.timerWird zur Darstellung eines Timers verwendet.togglebuttonWird zur Darstellung einer Umschaltfläche verwendet. Sollte mit accessibilityState checked verwendet werden, um anzuzeigen, ob die Schaltfläche ein- oder ausgeschaltet ist.toolbarWird zur Darstellung einer Werkzeugleiste (eines Containers für Aktionstasten oder Komponenten) verwendet.gridWird mit ScrollView, VirtualizedList, FlatList oder SectionList verwendet, um ein Raster darzustellen. Fügt die Ein-/Aus-Blenden von Rastern für Androids GridView hinzu.
Warum es wichtig ist
Elemente, die ungültige Rollenwerte zugewiesen bekommen, werden von unterstützenden Technologien nicht so interpretiert, wie vom Entwickler vorgesehen.
Wenn Screenreader und andere unterstützende Technologien die Rolle jedes Elements nicht kennen, können sie nicht intelligent mit ihm interagieren, noch können sie die Rolle dem Benutzer mitteilen. Die Funktionen, Eigenschaften und Methoden eines Elements, um Informationen zum und/oder vom Benutzer zu übermitteln, können nicht über unterstützende Technologien kommuniziert werden, wenn ein Rollenwert ungültig ist.
Wie man das Problem behebt
Stellen Sie sicher, dass der accessibilityRole-Wert eine gültige Rolle ist.
Gültige Beispiele
<TouchableOpacity accessibilityRole="button">
<Text>Increase Count</Text>
</TouchableOpacity>Ungültige Beispiele
<TouchableOpacity accessibilityRole="secondary-button">
<Text>Increase Count</Text>
</TouchableOpacity>