Barrierefreiheit unter macOS
Auf dieser Seite wird beschrieben, wie Sie die macOS-Barrierefreiheits-APIs verwenden, um Apps gemäß der Checkliste für Barrierefreiheit zu erstellen. Weitere Plattform-APIs finden Sie auf den Seiten zur Barrierefreiheit für Android und iOS .
Um zu verstehen, wie die Barrierefreiheits-APIs in macOS (früher OS X genannt) funktionieren, sehen Sie sich zuerst das OS X-Barrierefreiheitsmodell an.
Beschreiben von Ui-Elementen
AppKit verwendet das NSAccessibility
Protokoll, um APIs verfügbar zu machen, die dazu beitragen, die Benutzeroberfläche zugänglich zu machen. Dies schließt ein Standardverhalten ein, das versucht, aussagekräftige Werte für Barrierefreiheitseigenschaften festzulegen, z. B. das Festlegen der AccessibilityLabel
Schaltfläche. Die Bezeichnung ist in der Regel ein einzelnes Wort oder ein kurzer Ausdruck, der das Steuerelement oder die Sicht beschreibt.
Storyboarddateien
Xamarin.Mac verwendet den Xcode-Schnittstellen-Generator, um Storyboarddateien zu bearbeiten. Barrierefreiheitsinformationen können im Identitätsinspektor bearbeitet werden, wenn ein Steuerelement auf der Entwurfsoberfläche ausgewählt ist (wie im folgenden Screenshot dargestellt):
Code
Xamarin.Mac macht derzeit nicht als AccessibilityLabel
Setter verfügbar. Fügen Sie die folgende Hilfsmethode hinzu, um die Barrierefreiheitsbezeichnung festzulegen:
public static class AccessibilityHelper
{
[System.Runtime.InteropServices.DllImport (ObjCRuntime.Constants.ObjectiveCLibrary)]
extern static void objc_msgSend (IntPtr handle, IntPtr selector, IntPtr label);
static public void SetAccessibilityLabel (this NSView view, string value)
{
objc_msgSend (view.Handle, new ObjCRuntime.Selector ("setAccessibilityLabel:").Handle, new NSString (value).Handle);
}
}
Diese Methode kann dann wie gezeigt im Code verwendet werden:
AccessibilityHelper.SetAccessibilityLabel (someButton, "New Accessible Description");
Die AccessibilityHelp
-Eigenschaft dient zur Erläuterung der Funktionsweise des Steuerelements oder der Sicht und sollte nur hinzugefügt werden, wenn die Bezeichnung möglicherweise keine ausreichenden Informationen enthält. Der Hilfetext sollte trotzdem so kurz wie möglich gehalten werden, z. B. "Löscht das Dokument".
Einige Benutzeroberflächenelemente sind für den barrierefreien Zugriff nicht relevant (z. B. eine Bezeichnung neben einer Eingabe, die über eine eigene Barrierefreiheitsbezeichnung und Hilfe verfügt).
Legen Sie in diesen Fällen so fest AccessibilityElement = false
, dass diese Steuerelemente oder Ansichten von Sprachausgaben oder anderen Barrierefreiheitstools übersprungen werden.
Apple stellt Richtlinien zur Barrierefreiheit bereit, in denen die bewährten Methoden für Barrierefreiheitsbezeichnungen und Hilfetext erläutert werden.
Benutzerdefinierte Steuerelemente
Ausführliche Informationen zu den erforderlichen zusätzlichen Schritten finden Sie in den Apple-Richtlinien für barrierefreie benutzerdefinierte Steuerelemente .
Testen der Barrierefreiheit
macOS bietet einen Barrierefreiheitsinspektor , mit dem Sie Barrierefreiheitsfunktionen testen können. Der Inspektor ist in Xcode enthalten.
Beim ersten Start benötigt der Barrierefreiheitsinspektor die Berechtigung, den Computer über Barrierefreiheit zu steuern:
Entsperren Sie den Einstellungsbildschirm (falls erforderlich, links unten), und aktivieren Sie den Barrierefreiheitsinspektor:
Nach der Aktivierung wird der Inspektor als schwebendes Fenster angezeigt, das auf dem Bildschirm verschoben werden kann. Der folgende Screenshot zeigt den Inspektor, der neben einer Mac-Beispiel-App ausgeführt wird. Wenn der Cursor über das Fenster bewegt wird, zeigt der Inspektor alle zugänglichen Eigenschaften der einzelnen Steuerelemente an:
Weitere Informationen finden Sie im Leitfaden zum Testen der Barrierefreiheit für OS X.