Aggiungo il supporto di VoiceOver alla mia app. Fin qui, tutto bene, ma mi piacerebbe davvero essere in grado di specificare quale elemento è il primo parlato dopo una UIAccessibilityScreenChangedNotification. Non ho visto un modo per farlo. Fare qualcosa che l'elemento riepilogativo non sembra davvero farlo. Mi sto perdendo qualcosa?Selezione VoiceOver iniziale
risposta
Cosa succede ad usare UIAccessibilityAnnouncementNotification?
Io non credo che ci sia un valore di API che specifica un ordine di lettura, tranne usando Sintesi valore Element all'avvio - è legato alla progettazione.
modo che avrebbe dovuto testare l'ordine e di default per gli elementi UIKit o qualsiasi controlli personalizzati, perché dipende dal vostro disegno. Puoi anche contrassegnare gli elementi come elementi non accessibili in modo che non siano "letti", gli elementi accessibili letti per impostazione predefinita e i contenitori per gli elementi accessibili che consentono di controllare meglio le interazioni desiderate. Non so se rendere l'elemento selezionato aiuterà.
io lo prendo si sta già utilizzando il Accessibility Inspector per provare l'applicazione prima di testare su iOS.
Se si necessita di uno sfondo sull'argomento, vale la pena leggere Rune's Working With VoiceOver Support e Gemmell's Accessibility for Apps.
In realtà non ho usato l'ispettore dell'accessibilità, ma il mio gioco è attualmente giocato da utenti non vedenti, quindi questo è solo per cambiare l'attenzione. Il problema è che toccando un pulsante mostra un nuovo elemento dell'interfaccia utente, ma capita di essere fisicamente superiore a quello che hai toccato, e questo è davvero un dolore per scorrere. –
Questo è sempre stato perfettamente possibile fare.
Basta scrivere qualcosa sulla falsariga di:
- (void)viewDidAppear:(BOOL)animated
{
[super viewDidAppear:animated];
UIAccessibilityPostNotification(UIAccessibilityScreenChangedNotification,
self.myFirstElement);
}
@end
Questo funziona sia per l'UIAccessibilityScreenChangedNotification e UIAccessibilityLayoutChangedNotification. Maggiori informazioni: http://developer.apple.com/library/ios/#documentation/UIKit/Reference/UIAccessibility_Protocol/Introduction/Introduction.html#//apple_ref/c/data/UIAccessibilityLayoutChangedNotification E qui: http://developer.apple.com/library/ios/featuredarticles/ViewControllerPGforiPhoneOS/Accessibility/AccessibilityfromtheViewControllersPerspective.html#//apple_ref/doc/uid/TP40007457-CH2-SW1
Non penso sia vero. Almeno, è stato menzionato per la prima volta come rilevante per iOS 6. –
Funziona su iOS 7. Grazie! –
This technique ha lavorato per me.
VoiceOver annuncia il valore del primo elemento dell'array accessibleElements. Questo può essere ordinato in base alle proprie esigenze.
- 1. Limite Larghezza iniziale della lista di selezione
- 2. Stato iOS Voiceover
- 3. UIPageControl e VoiceOver/accessibility
- 4. UITextView con voiceover
- 5. Azioni personalizzate VoiceOver in UITableViewCell
- 6. Valore iniziale della selezione non impostato in AngularJS
- 7. Cellule prototipo ios 5 e problema VoiceOver
- 8. Come interrompere l'annuncio di VoiceOver per UISegmentedControl?
- 9. I controlli VoiceOver sono selezionabili quando nascosti
- 10. Accessibilità per iOS, VoiceOver leggere problema ordine
- 11. ritardo schermata iniziale iPhone App
- 12. html - intervallo di selezione - ottenere l'intervallo + nodo iniziale + nodo finale + distanza
- 13. Come modificare la selezione iniziale della barra delle schede a livello di programmazione
- 14. menu a discesa AngularJS (ng- opzioni) non vincolante - stringa all'oggetto (selezione iniziale)
- 15. Calcola la posizione iniziale e finale della selezione utente utilizzando javascript da un elemento padre
- 16. UITableView dequeueReusableHeaderFooterViewWithIdentifier ritorna nil con VoiceOver su iOS 7
- 17. Strange UICollectionComposizio selezione selezione
- 18. Cancella selezione SingleChoiceVisualizzazione selezione
- 19. Visualizza etichetta optgroup come opzione iniziale
- 20. visualizza zero iniziale in un gtk.SpinButton
- 21. Selezione sottostringa SQL
- 22. tablesorter pager iniziale paginazione
- 23. Timeout connessione iniziale MySQLdb
- 24. Imposta sfondo schermata iniziale
- 25. MyComputer come directory iniziale
- 26. Cambia codice ID iniziale
- 27. Cambia l'attività iniziale dell'applicazione
- 28. Simulazione fisica iniziale
- 29. Assegnazione iniziale Java
- 30. Ruby - ogni offset iniziale
Che suona come sarebbe il modo per gestire dire transitori notifiche Game Center: “Utilizzare questa notifica per fornire informazioni di accessibilità sugli eventi che non aggiornano l'interfaccia utente dell'applicazione (UI), o che aggiornano l'interfaccia utente solo brevemente.” Voglio concentrarmi su un elemento dell'interfaccia utente specifico. –
Hmm, sto iniziando a pensare che potrei doverlo fare, anche se in realtà non è la risposta corretta. (In alcuni casi, il prossimo passaggio sarà verso l'elemento focalizzato, quindi lo sentirai ANCORA.) –
Un altro svantaggio nell'usare la notifica dell'annuncio quando viene visualizzata per la prima volta una vista è che la sua lettura è spesso troncata dalla selezione iniziale di VoiceOver. – MusiGenesis