2012-05-18 9 views
11

Sono in procinto di rendere accessibile la mia app iOS e ho quasi finito. La mia app contiene diverse transizioni personalizzate sullo schermo e, quando VoiceOver è attivo, sembra selezionare l'elemento in alto a sinistra per descrivere dopo la transizione o, occasionalmente, un elemento casuale. UIAccessibilityTraitSummaryElement sembrava promettente ma, a quanto ho capito, funziona solo quando l'app viene avviata, non dopo transizioni arbitrarie.VoiceOver: forza un elemento di accessibilità da selezionare dopo una transizione dello schermo

Non sembra essere un tratto di accessibilità o proprietà per specificare l'ordine preferito a cui gli elementi sono assegnati. C'è un modo per forzare l'attenzione di VoiceOver?

risposta

13

EDIT: iOS 6 è ora disponibile, e come detto da kevboh, è ora possibile passare un argomento in cui la pubblicazione di un UIAccessibilityLayoutChangedNotification o UIAccessibilityScreenChangedNotification:

UIAccessibilityPostNotification(UIAccessibilityScreenChangedNotification, myAccessibilityElement); 

myAccessibilityElement sarà nella maggior parte dei casi, essere un UIView con isAccessibilityElement impostato su SÌ (l'impostazione predefinita per molte visualizzazioni).

In alternativa, è possibile aggiungere il nuovo tratto aggiunto in iOS6 agli elementi di accessibilità 'accessibilityTraits, che dovrebbero avere lo stesso risultato (anche se non l'ho ancora testato).

ORIGINALE: C'è nuova API in iOS 6 che non può essere discusso in questa sede perché è ancora sotto NDA, ma può essere trovato nel "Accessibilità per iOS" video della WWDC 2012 (Sessione 210).

In mancanza di questo, però, una soluzione potrebbe essere quella di avviare manualmente un annuncio per ignorare l'impostazione predefinita focalizzata accessibilità annuncio etichetta:

UIAccessibilityPostNotification(UIAccessibilityAnnouncementNotification, @"Your text"); 
+0

guardato il video della sessione di ieri sera, che API sembra perfetto. Grazie! Per coloro che cercano la spiegazione in-video, si verifica intorno alle 26:33 nella Sessione 210 - Accessibilità per iOS. – kevboh

+0

Commenterò nuovamente qui quando l'API diventa pubblica. – kevboh

+4

Ora che iOS 6 è pubblico: è possibile passare un elemento di accessibilità quando si pubblica un 'UIAccessibilityLayoutChangedNotification' o' UIAccessibilityScreenChangedNotification' come secondo argomento di 'UIAccessibilityPostNotification' e VoiceOver si concentrerà su quell'elemento. – kevboh

Problemi correlati