Accessibilità in iOS
Questa pagina descrive come usare le API di accessibilità iOS per creare app in base all'elenco di controllo per l'accessibilità. Per altre API della piattaforma, vedere le pagine di accessibilità di Android e OS X .
Descrizione degli elementi dell'interfaccia utente
iOS fornisce le AccessibilityLabel
proprietà e AccessibilityHint
per gli sviluppatori per aggiungere testo descrittivo che può essere usato dall'utilità per la lettura dello schermo VoiceOver per rendere i controlli più accessibili. I controlli possono anche essere contrassegnati con uno o più tratti che forniscono contesto aggiuntivo in modalità accessibili.
Alcuni controlli potrebbero non essere accessibili (ad esempio, un'etichetta su un input di testo o un'immagine puramente decorativa), che IsAccessibilityElement
viene fornita per disabilitare l'accessibilità in tali casi.
Progettazione interfaccia utente
Il riquadro proprietà contiene una sezione di accessibilità che consente di modificare queste impostazioni quando un controllo viene selezionato in Progettazione interfaccia utente iOS:
C#
Queste proprietà possono anche essere impostate direttamente nel codice:
usernameInput.AccessibilityLabel = "Search";
usernameInput.Hint = "Press Enter after typing to search employee list";
someLabel.IsAccessibilityElement = false;
displayOnlyText.AccessibilityTraits = UIAccessibilityTrait.Header | UIAccessibilityTrait.Selected;
Che cos'è AccessibilityIdentifier?
Viene AccessibilityIdentifier
usato per impostare una chiave univoca che può essere usata per fare riferimento agli elementi dell'interfaccia utente tramite l'API UIAutomation.
Il valore di AccessibilityIdentifier
non viene mai parlato o visualizzato all'utente.
PostNotification
Il UIAccessibility.PostNotification
metodo consente di generare eventi all'utente all'esterno dell'interazione diretta, ad esempio quando interagiscono con un controllo specifico.
Annuncio
Un annuncio può essere inviato dal codice per informare l'utente che alcuni stati sono stati modificati (ad esempio un'operazione in background è stata completata). Ciò può essere accompagnato da un'indicazione visiva nell'interfaccia utente:
UIAccessibility.PostNotification (
UIAccessibilityPostNotification.Announcement,
new NSString(@"Item was saved"));
LayoutChanged
L'annuncio LayoutChanged
viene usato quando il layout dello schermo:
UIAccessibility.PostNotification (
UIAccessibilityPostNotification.LayoutChanged,
someControl); // someControl gets focus
Accessibilità e localizzazione
Le proprietà di accessibilità, come l'etichetta e l'hint, possono essere localizzate esattamente come altro testo nell'interfaccia utente.
MainStoryboard.strings
Se l'interfaccia utente è disposta in uno storyboard, è possibile fornire traduzioni per le proprietà di accessibilità nello stesso modo delle altre proprietà. Nell'esempio seguente, un oggetto UITextField
ha un ID di localizzazione di e due proprietà di Pqa-aa-ury
accessibilità impostate in spagnolo:
/* Accessibility */
"Pqa-aa-ury.accessibilityLabel" = "Notas input";
"Pqa-aa-ury.accessibilityHint" = "escriba más información";
Questo file verrà inserito nella directory es.lproj per il contenuto spagnolo.
Localizable.strings
In alternativa, le traduzioni possono essere aggiunte al file Localizable.strings nella directory del contenuto localizzato ,ad esempio. es.lproj per spagnolo):
/* Accessibility */
"Notes" = "Notas input";
"Provide more information" = "escriba más información";
Queste traduzioni possono essere usate in C# tramite il LocalizedString
metodo :
notesText.AccessibilityLabel = NSBundle.MainBundle.LocalizedString ("Notes", "");
notesText.AccessibilityHint = NSBundle.MainBundle.LocalizedString ("Provide more information", "");
Per altre informazioni sulla localizzazione del contenuto, vedere la guida alla localizzazione di iOS.
Test dell'accessibilità
VoiceOver è abilitato nell'app Impostazioni passando a Generale > Accessibilità > VoiceOver:
La schermata Accessibilità fornisce anche le impostazioni per lo zoom, le dimensioni del testo, le opzioni di colore e contrasto, le impostazioni vocali e altre opzioni di configurazione.
Seguire queste istruzioni di VoiceOver per testare l'accessibilità nei dispositivi iOS.
Test del simulatore
Quando si esegue il test nel simulatore, Controllo accessibilità è disponibile per verificare che le proprietà e gli eventi di accessibilità siano configurati correttamente. Attivare il controllo nell'app Impostazioni passando a Controllo accessibilità >generale>:
Una volta abilitata, la finestra di controllo passa il puntatore del mouse sulla schermata iOS in qualsiasi momento. Di seguito è riportato un esempio dell'output quando viene selezionata una riga di visualizzazione tabella. Si noti che l'etichetta contiene una frase che fornisce il contenuto della riga e anche che è "done" (ad esempio, il tick è visibile):
Mentre il controllo è visibile, usare l'icona "X" in alto a sinistra per visualizzare temporaneamente e nascondere la sovrimpressione e abilitare/disabilitare le impostazioni di accessibilità.