Barrierefreiheit unter IOSAccessibility on iOS

Auf dieser Seite wird beschrieben, wie Sie die IOS-Barrierefreiheits-APIs zum Erstellen von apps entsprechend der Eincheck Checklisteverwenden.This page describes how to use the iOS Accessibility APIs to build apps according to the accessibility checklist. Weitere Plattform-APIs finden Sie auf der Seite zu den Barrierefreiheits Seiten für Android-Barrierefreiheit und OS X .Refer to the Android accessibility and OS X accessibility pages for other platform APIs.

Beschreiben von UI-ElementenDescribing UI Elements

IOS stellt die AccessibilityLabel -und- AccessibilityHint Eigenschaften für Entwickler bereit, um beschreibenden Text hinzuzufügen, der vom VoiceOver-Bildschirm Reader verwendet werden kann, um den Zugriff auf die Steuerelemente zu erleichterniOS provides the AccessibilityLabel and AccessibilityHint properties for developers to add descriptive text which can be used by the VoiceOver screen reader to make the controls more accessible. Steuerelemente können auch mit einem oder mehreren Merkmalen gekennzeichnet werden, die zusätzlichen Kontext in zugänglichen Modi bereitstellen.Controls can also be tagged with one or more traits that provide additional context in accessible modes.

Einige Steuerelemente müssen möglicherweise nicht zugänglich sein (z. b. eine Bezeichnung in einer Texteingabe oder ein Bild, das rein dekorativ ist) – das IsAccessibilityElement wird bereitgestellt, um die Barrierefreiheit in diesen Fällen zu deaktivieren.Some controls may not need to be accessible (for example, a label on a text input or an image that is purely decorative) – the IsAccessibilityElement is provided to disable accessibility in those cases.

Benutzeroberflächen-DesignerUI Designer

Die Eigenschaftenpad enthält einen Abschnitt zur Barrierefreiheit, mit dem diese Einstellungen bearbeitet werden können, wenn ein Steuerelement im IOS-Benutzeroberflächen-Designer ausgewählt wird:The Properties Pad contains an accessibility section that allows these settings to be edited when a control is selected in the iOS UI Designer:

Barrierefreiheits Einstellungen

C#C#

Diese Eigenschaften können auch direkt im Code festgelegt werden:These properties can also be set directly in code:

usernameInput.AccessibilityLabel = "Search";
usernameInput.Hint = "Press Enter after typing to search employee list";
someLabel.IsAccessibilityElement = false;
displayOnlyText.AccessibilityTraits = UIAccessibilityTrait.Header | UIAccessibilityTrait.Selected;

Was ist accessibilityidentifier?What is AccessibilityIdentifier?

AccessibilityIdentifierWird verwendet, um einen eindeutigen Schlüssel festzulegen, der zum Verweisen auf Benutzeroberflächen Elemente über die UIAutomation-API verwendet werden kann.The AccessibilityIdentifier is used to set a unique key that can be used to refer to user interface elements via the UIAutomation API.

Der Wert von AccessibilityIdentifier wird niemals gesprochen oder für den Benutzer angezeigt.The value of AccessibilityIdentifier is never spoken or displayed to the user.

PostnotificationPostNotification

Mit der- UIAccessibility.PostNotification Methode können Ereignisse außerhalb der direkten Interaktion an den Benutzer ausgelöst werden (z. b. Wenn Sie mit einem bestimmten Steuerelement interagieren).The UIAccessibility.PostNotification method allows events to be raised to the user outside of direct interaction (for example, when they interact with a specific control).

AnkündigungAnnouncement

Eine Ankündigung kann vom Code gesendet werden, um den Benutzer darüber zu informieren, dass sich ein Zustand geändert hat (z. b. Wenn ein Hintergrund Vorgang abgeschlossen wurde).An announcement can be sent from code to inform the user that some state has changed (such as a background operation has completed). Dies kann mit einem visuellen Hinweis auf der Benutzeroberfläche einhergehen:This could be accompanied by a visual indication in the user interface:

UIAccessibility.PostNotification (
  UIAccessibilityPostNotification.Announcement,
    new NSString(@"Item was saved"));

LayoutchangedLayoutChanged

Die LayoutChanged Ankündigung wird verwendet, wenn das Bildschirmlayout:The LayoutChanged announcement is used when the screen layout:

UIAccessibility.PostNotification (
  UIAccessibilityPostNotification.LayoutChanged,
    someControl);  // someControl gets focus

Barrierefreiheit und LokalisierungAccessibility and Localization

Barrierefreiheits Eigenschaften wie die Bezeichnung und der Hinweis können genau wie andere Text in der Benutzeroberfläche lokalisiert werden.Accessibility properties like the label and hint can be localized just like other text in the user interface.

Mainstoryboard. StringsMainStoryboard.strings

Wenn die Benutzeroberfläche in einem Storyboard angeordnet ist, können Sie Übersetzungen für Barrierefreiheits Eigenschaften auf die gleiche Weise wie andere Eigenschaften bereitstellen.If the user interface is laid out in a storyboard, you can provide translations for accessibility properties in the same way as other properties. Im folgenden Beispiel UITextField verfügt ein über eine Lokalisierungs-ID von Pqa-aa-ury und zwei Barrierefreiheits Eigenschaften, die auf Spanisch festgelegt werden:In the example below, a UITextField has a Localization ID of Pqa-aa-ury and two accessibility properties being set in Spanish:

/* Accessibility */
"Pqa-aa-ury.accessibilityLabel" = "Notas input";
"Pqa-aa-ury.accessibilityHint" = "escriba más información";

Diese Datei befindet sich im Verzeichnis " es. lproj " für spanische Inhalte.This file would be placed in the es.lproj directory for Spanish content.

Lokalisierbare Zeichen folgenLocalizable.strings

Alternativ können die Übersetzungen der lokalisierbaren Strings -Datei im lokalisierten Inhaltsverzeichnis hinzugefügt werden (z. b.Alternatively, the translations can be added to the Localizable.strings file in the localized content directory (eg. es. lproj für Spanisch):es.lproj for Spanish):

/* Accessibility */
"Notes" = "Notas input";
"Provide more information" = "escriba más información";

Diese Übersetzungen können in c# über die- LocalizedString Methode verwendet werden:These translations can be used in C# via the LocalizedString method:

notesText.AccessibilityLabel = NSBundle.MainBundle.LocalizedString ("Notes", "");
notesText.AccessibilityHint = NSBundle.MainBundle.LocalizedString ("Provide more information", "");

Weitere Informationen zum Lokalisieren von Inhalten finden Sie im IOS-Lokalisierungs Handbuch .Refer to the iOS localization guide for more details on localizing content.

Testen der BarrierefreiheitTesting Accessibility

VoiceOver ist in der App " Einstellungen " aktiviert, indem Sie zu Allgemein > Barrierefreiheits > VoiceOvernavigieren:VoiceOver is enabled in the Settings app by navigating to General > Accessibility > VoiceOver:

Festlegen der Sprech Rate

Der Bildschirm Barrierefreiheit enthält auch Einstellungen für Zoom, Textgröße, Farbe & Kontrast Optionen, Spracheinstellungen und andere Konfigurationsoptionen.The Accessibility screen also provides settings for zoom, text size, color & contrast options, speech settings, and other configuration options.

Befolgen Sie diese VoiceOver-Anweisungen , um die Barrierefreiheit auf IOS-Geräten zu testen.Follow these VoiceOver instructions to test accessibility on iOS devices.

SimulatortestsSimulator Testing

Wenn Sie im Simulator testen, steht Ihnen der Barrierefreiheits Inspektor zur Verfügung, um zu überprüfen, ob Barrierefreiheits Eigenschaften und Ereignisse richtig konfiguriert sind.When testing in the simulator, the Accessibility Inspector is available to help verify accessibility properties and events are correctly configured. Aktivieren Sie den Inspektor in der App " Einstellungen ", indem Sie zu Allgemein > Barrierefreiheit > Barrierefreiheits Inspektornavigieren:Turn on the inspector in the Settings app by navigating to General > Accessibility > Accessibility Inspector:

Zugriffs Inspektor aktivieren

Nach der Aktivierung zeigt das Inspektor-Fenster jederzeit auf den IOS-Bildschirm.Once enabled, the inspector window hovers over the iOS screen at all times. Im folgenden finden Sie ein Beispiel für die Ausgabe, wenn eine Tabellen Ansichts Zeile ausgewählt ist – beachten Sie, dass die Bezeichnung einen Satz enthält, der den Inhalt der Zeile und auch "Done" enthält (d. h. der Tick ist sichtbar):Here is an example of the output when a table view row is selected – notice the Label contains a sentence that gives the content of the row and also that it is "done" (ie. the tick is visible):

Verwenden des Zugriffs Inspektors

Während der Inspektor sichtbar ist, verwenden Sie das Symbol "X" in der oberen linken Ecke, um das Overlay vorübergehend anzuzeigen und auszublenden und Barrierefreiheits Einstellungen zu aktivieren/deaktivieren.While the inspector is visible, use the "X" icon at the top-left to temporarily show and hide the overlay and enable/disable accessibility settings.