Accessibilità in macOS
Questa pagina descrive come usare le API di accessibilità macOS per creare app in base all'elenco di controllo per l'accessibilità. Fare riferimento alle pagine di accessibilità di Android e accessibilità iOS per altre API della piattaforma.
Per comprendere il funzionamento delle API di accessibilità in macOS (precedentemente denominato OS X), esaminare prima il modello di accessibilità OS X.
Descrizione degli elementi dell'interfaccia utente
AppKit usa il NSAccessibility
protocollo per esporre le API che consentono di rendere accessibile l'interfaccia utente. Include un comportamento predefinito che tenta di impostare valori significativi per le proprietà di accessibilità, ad esempio l'impostazione di AccessibilityLabel
un pulsante . L'etichetta è in genere una singola parola o una frase breve che descrive il controllo o la vista.
File storyboard
Xamarin.Mac usa Xcode Interface Builder per modificare i file dello storyboard. Le informazioni sull'accessibilità possono essere modificate nel controllo identità quando viene selezionato un controllo nell'area di progettazione (come illustrato nello screenshot seguente):
Codice
Xamarin.Mac non espone attualmente come AccessibilityLabel
setter. Aggiungere il metodo helper seguente per impostare l'etichetta di accessibilità:
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);
}
}
Questo metodo può quindi essere usato nel codice come illustrato di seguito:
AccessibilityHelper.SetAccessibilityLabel (someButton, "New Accessible Description");
La AccessibilityHelp
proprietà è per una spiegazione del funzionamento del controllo o della visualizzazione e deve essere aggiunta solo quando l'etichetta potrebbe non fornire informazioni sufficienti. Il testo della Guida deve essere mantenuto il più breve possibile, ad esempio "Elimina il documento".
Alcuni elementi dell'interfaccia utente non sono rilevanti per l'accesso accessibile, ad esempio un'etichetta accanto a un input con una propria etichetta di accessibilità e guida.
In questi casi, impostare AccessibilityElement = false
in modo che questi controlli o visualizzazioni vengano ignorati dalle utilità per la lettura dello schermo o da altri strumenti di accessibilità.
Apple fornisce linee guida per l'accessibilità che illustrano le procedure consigliate per le etichette di accessibilità e il testo della Guida.
Controlli personalizzati
Per informazioni dettagliate sui passaggi aggiuntivi necessari, vedere le linee guida di Apple per i controlli personalizzati accessibili.
Test dell'accessibilità
macOS fornisce un controllo accessibilità che consente di testare la funzionalità di accessibilità. Il controllo è incluso in Xcode.
La prima volta che viene avviata, Controllo accessibilità richiederà l'autorizzazione per controllare il computer tramite accessibilità:
Sbloccare la schermata delle impostazioni (se necessario, in basso a sinistra) e selezionare Controllo accessibilità:
Una volta abilitato, il controllo viene visualizzato come finestra mobile che può essere spostata sullo schermo. Lo screenshot seguente mostra il controllo in esecuzione accanto a un'app Mac di esempio. Quando il cursore viene spostato sulla finestra, il controllo visualizza tutte le proprietà accessibili di ogni controllo:
Per altre informazioni, vedere la guida relativa al test dell'accessibilità per OS X.