Toegankelijkheidsscanner Remediëring

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
Not for use with personal data

Gebruikt uw team de Android Accessibility Scanner van Google?

Dit gedeelte biedt advies voor het herstellen van de regels die de scanner controleert. Lees meer over het benutten van Accessibility Scanner en axe DevTools Mobile.

Bezoek de richtlijnen voor de toegankelijkheidsscanner van Google voor hun volledige lijst met huidige controles, beschrijvingen en updates.

Inhoud Labeling

Label Ontbreekt

Inhoud binnen de weergave kan contextuele informatie missen.

Voor elke weergave die informatie aan de gebruiker biedt, moet een van de volgende worden verstrekt om dit toegankelijkheidsprobleem op te lossen:

  • android:contentDescription: In de meeste gevallen volstaat het toevoegen van een inhoudsomschrijving.
  • android:hint: Hints kunnen worden toegevoegd om het type gegevens te beschrijven dat de gebruiker moet invoeren voor bewerkbare tekstweergaven.
  • android:labelFor: Deze tag stelt u in staat een weergave als label voor een andere weergave toe te wijzen.
note

Binnen Compose worden inhoudsomschrijving en hint gevonden als parameter bij het definiëren van de weergave of via de Modifier-interface.

Decoratieve Afbeeldingen

Decoratieve afbeeldingen die geen belangrijke informatie verschaffen, kunnen worden gemarkeerd als niet belangrijk voor toegankelijkheid.

Voor XML: android:importantForAccessibility="no"

Of voor Compose:

Image(
      imageVector = Icons.Filled.AccountCircle,
      contentDescription = null // decorative
    )

Item Gelabeld met Type of Status

Een van uw weergaven kan een overbodige status hebben. Android biedt standaardweergaven met statussen zoals *aan*, *uit*, *geselecteerd*, of *niet geselecteerd*. Het toevoegen van een status aan de uitlezing kan een verwarrende ervaring opleveren.

Om dit toegankelijkheidsprobleem op te lossen, moet u ervoor zorgen dat:

  • Selectievakjes een bijbehorend label hebben voor context
  • Statusbeschrijvingen niet worden toegevoegd aan de beschrijving van de weergave
<TextView
      android:id="@+id/edit_text_label"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:labelFor="@+id/example"
      android:text="Check Label" />

<androidx.appcompat.widget.AppCompatCheckBox
      android:id="@+id/example"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="@string/with_text"/>

Dubbele Item Beschrijvingen

Meerdere weergaven binnen de hiërarchie bleken identieke beschrijvingen te hebben.

Dit is geen WCAG-fout en er kunnen gevallen zijn waarin dit een vereiste is. Als inhoudsbeschrijvingen worden gedupliceerd, zorg er dan voor dat elke voldoende context biedt zodat de gebruiker weet wat het resultaat zou zijn van interactie met de weergave.

Elke link moet genoeg tekst bevatten om zijn doel over te brengen. Bij het gebruik van beschrijvingen zoals „Klik hier“, moet u ervoor zorgen dat de omringende tekst voldoende informatie bevat om het doel van de link te achterhalen.

Implementatie - Klikbare Items

Links moeten duidelijk worden weergegeven en eenvoudig toegankelijk zijn vanuit het lokale contextmenu. Google raadt aan om gebruik te maken van URLSpan of de handige klasse Linkify om hyperlinks weer te geven in de gebruikersinterface van een app om de kans te vergroten dat deze links worden gedetecteerd en geactiveerd.

Dubbele Klikbare Weergaven

Een van de klikbare elementen in uw weergave overlapt met een ander klikbaar element. U kunt dit toegankelijkheidsprobleem op een van de volgende manieren oplossen:

  • Verplaats de klikbare elementen zodat ze niet botsen of overlappen.
  • Als de weergaven niet kunnen worden verplaatst, zorg er dan voor dat beide weergaven een geschikt groot klikgebied hebben en iedereen zonder problemen met de elementen kan omgaan.

Bewerkbaar Item Label

Bewerkbare velden moeten een label hebben dat het doel van het veld beschrijft.

Een voorbeeld met EditText:

<TextView
      android:id="@+id/edit_text_label"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:labelFor="@+id/edit_text"
      android:text="Enter your username" />

<EditText
      android:id="@+id/edit_text"
      android:layout_width="0dp"
      android:layout_height="wrap_content"
      android:hint="Hint" />

Een voorbeeld met CheckBox:

Gebruik een TextView en koppel het aan het CheckBox-element:

val checkBox: CheckBox = ....... // Role: CheckBox
val label: TextView = ....... // Role: Label
label.setLabelFor(checkBox.getId()) // Associate the Checkbox with its Name

Niet-ondersteund Itemtype

Het lijkt erop dat u een aangepaste weergave heeft. Bewerk de AccessibilityNodeInfo om de className te voorzien van een geschikt doel voor de weergave.

val frameLayout = findViewById<FrameLayout>(R.id.custom_view)
frameLayout.setAccessibilityDelegate(object : View.AccessibilityDelegate() {
      override fun onInitializeAccessibilityNodeInfo(
          host: View,
          info: AccessibilityNodeInfo
      ) {
            info.className = "ClassName"
            info.contentDescription = "ContentDescription"
            super.onInitializeAccessibilityNodeInfo(host, info)           
      }
})

Volgorde van Navigatie

Als u uw weergaven kunt navigeren met TalkBack op een manier die contextueel logisch is, kan dit een vals-positief zijn en hoeft het niet aangepakt te worden.

Als TalkBack niet dezelfde informatie biedt als het lezen van de app zonder hulpmiddelen, kunt u overwegen de volgorde van de weergaven te wijzigen. Aangezien dit lastig kan zijn en per ongeluk een oneindige lus kan veroorzaken, raden we aan om de volgorde van de navigatie niet te wijzigen. Om de volgorde van de navigatie te veranderen, gebruik android:accessibilityTraversalBefore en android:accessibilityTraversalAfter.

Tekst Schalen

Tekstelementen moeten schaalbare pixels (sp) gebruiken in plaats van dichtheidsonafhankelijke pixels (dp) om de tekst mee te laten schalen met de lettergrootte-instelling van het apparaat.

Aanraakdoelgrootte

Voor aanbevelingen en advies over herstel van de visuele en aanraakbare gebieden van actieve bedieningsknoppen, raadpleeg de Aanraakdoelgrootte Regel voor onze Android-bibliotheek.

Laag Contrast

Het kleurcontrast tussen tekst en de achtergrond moet voldoen aan de minimum verhouding van WCAG 2 AA. Leer over deze verhouding en vind advies over herstel van Laag Contrast onder de Kleurcontrastregel voor onze Android-bibliotheek.