Apps barrierefrei gestalten

Versuchen Sie, Ihre Android-App für alle nutzbar zu machen, auch für Menschen mit Beeinträchtigungen.

Android-Geräte werden von Menschen mit Sehbehinderung, Farbenblindheit, Hörbehinderung, eingeschränkter Feinmotorik, kognitiven Beeinträchtigungen und vielen anderen Behinderungen verwendet. Wenn Sie Apps mit Blick auf die Barrierefreiheit entwickeln, verbessern Sie damit die User Experience für Menschen, die Barrierefreiheit benötigen.

Auf dieser Seite finden Sie Richtlinien für die Implementierung wichtiger Elemente der Barrierefreiheit, damit alle Ihre App leichter nutzen können. Ausführlichere Informationen dazu, wie Sie die Barrierefreiheit Ihrer App verbessern können, finden Sie unter Prinzipien zur Verbesserung der Barrierefreiheit von Apps.

Textsichtbarkeit erhöhen

Für jede Gruppe von Text in Ihrer App empfehlen wir, dass der Farbkontrast – d. h. der Unterschied der wahrgenommenen Helligkeit zwischen der Farbe des Textes und der Farbe des Hintergrunds hinter dem Text – über einem bestimmten Grenzwert liegt. Der genaue Schwellenwert hängt von der Schriftgröße des Textes und davon ab, ob der Text fett formatiert ist:

  • Wenn der Text kleiner als 18 pt oder fett und kleiner als 14 pt ist, lege das Farbkontrastverhältnis auf mindestens 4, 5:1 fest.
  • Bei allen anderen Texten sollte das Farbkontrastverhältnis mindestens 3:1 betragen.

In der folgenden Abbildung sehen Sie zwei Beispiele für den Farbkontrast zwischen Text und Hintergrundfarbe:

Bilder, auf denen Text angezeigt wird
Abbildung 1. Niedriger als empfohlen (links) und ausreichender Farbkontrast (rechts).

Wenn Sie den Farbkontrast zwischen Text und Hintergrundfarbe in Ihrer App prüfen möchten, verwenden Sie ein Onlinetool zur Farbkontrastprüfung oder die App Accessibility Scanner.

Große, einfache Steuerelemente verwenden

Die Benutzeroberfläche Ihrer App ist einfacher zu verwenden, wenn die Steuerelemente besser zu sehen und angetippt werden können. Wir empfehlen, dass jedes interaktive UI-Element einen fokussierbaren Bereich oder eine Größe des Berührungszielbereichs von mindestens 48 dpx48 dp hat. Je größer, desto besser.

Damit ein bestimmtes UI-Element groß genug ist, müssen die folgenden Bedingungen beide erfüllt sein:

Aufgrund der Abstände kann die sichtbare Größe eines Objekts unter 48 dpx 48 dp liegen, während die empfohlene Größe des Berührungszielbereichs eingehalten wird.

Das folgende Code-Snippet zeigt ein Element mit der empfohlenen Größe für Berührungszielbereiche:

<ImageButton ...
    android:paddingLeft="4dp"
    android:minWidth="40dp"
    android:paddingRight="4dp"

    android:paddingTop="8dp"
    android:minHeight="32dp"
    android:paddingBottom="8dp" />

Jedes UI-Element beschreiben

Fügen Sie für jedes UI-Element in Ihrer App eine Beschreibung mit seinem Zweck hinzu. In den meisten Fällen fügen Sie diese Beschreibung in das Attribut contentDescription des Elements ein, wie im folgenden Code-Snippet gezeigt:

<!-- Use string resources for easier localization. -->
<!-- The en-US value for the following string is "Inspect". -->
<ImageView
    ...
    android:contentDescription="@string/inspect" />

Beachten Sie beim Hinzufügen von Beschreibungen zu den UI-Elementen Ihrer App die folgenden Best Practices:

  • Gib den Typ des UI-Elements nicht in der Inhaltsbeschreibung an. Screenreader hören automatisch sowohl den Typ als auch die Beschreibung des Elements an. Wenn beispielsweise durch das Auswählen einer Schaltfläche in Ihrer App die Aktion „Senden“ ausgelöst wird, verwenden Sie die Beschreibung der Schaltfläche "Submit" und nicht "Submit button".

  • Die einzelnen Beschreibungen müssen eindeutig sein. Wenn Screenreader-Nutzer auf eine wiederholte Elementbeschreibung stoßen, erkennen sie auf diese Weise korrekt, dass der Fokus auf einem Element liegt, das bereits zuvor im Fokus war. Insbesondere muss jedes Element in einer Ansichtsgruppe wie RecyclerView eine andere Beschreibung haben. Jede Beschreibung muss den eindeutigen Inhalt eines bestimmten Elements widerspiegeln, z. B. den Namen einer Stadt in einer Liste von Standorten.

  • Wenn das minSdkVersion Ihrer App 16 oder höher ist, können Sie das Attribut android:importantForAccessibility für grafische Elemente, die nur für dekorative Effekte verwendet werden, auf "no" setzen.

Weitere Informationen

Weitere Informationen dazu, wie Sie die Barrierefreiheit Ihrer Anwendung verbessern können, finden Sie in den folgenden zusätzlichen Ressourcen:

Codelabs

Blogposts