我將VoiceOver支持添加到我的應用程序。到目前爲止,這麼好,但我真的希望能夠指定哪個元素是在UIAccessibilityScreenChangedNotification之後說出的第一個元素。我還沒有看到有辦法做到這一點。製作摘要元素似乎並不是真的。我錯過了什麼嗎?初始VoiceOver選擇
回答
如何使用UIAccessibilityAnnouncementNotification?
我不認爲有一個API值指定了讀取的順序,除了在啓動時使用Summary Element值之外 - 這是設計。
因此,您將不得不測試UIKit元素或任何自定義控件的順序和默認值,因爲它取決於您的設計。您還可以將項目標記爲不可訪問的元素,以便它們不會被「讀取」,默認情況下會讀取可訪問的元素,以及用於訪問元素的容器,以便您更好地控制預期的交互。我不知道是否選擇該項目會有所幫助。
我認爲您已在使用Accessibility Inspector在iOS上進行測試之前測試您的應用程序。
如果您需要一些背景,Rune's Working With VoiceOver Support和Gemmell's Accessibility for Apps可能值得一讀。
我其實沒有使用輔助功能檢查器,但是我的遊戲目前正在被盲人用戶玩,所以這只是關於改變焦點。問題是點擊一個按鈕會顯示一個新的UI元素,但它實際上超出了您所點擊的範圍,而這實際上是一種輕鬆的滑動操作。 –
這一直是完全可以做到的。
只寫沿着線的東西:
- (void)viewDidAppear:(BOOL)animated
{
[super viewDidAppear:animated];
UIAccessibilityPostNotification(UIAccessibilityScreenChangedNotification,
self.myFirstElement);
}
@end
這適用於這兩個UIAccessibilityScreenChangedNotification和UIAccessibilityLayoutChangedNotification。 更多信息:http://developer.apple.com/library/ios/#documentation/UIKit/Reference/UIAccessibility_Protocol/Introduction/Introduction.html#//apple_ref/c/data/UIAccessibilityLayoutChangedNotification 這裏: http://developer.apple.com/library/ios/featuredarticles/ViewControllerPGforiPhoneOS/Accessibility/AccessibilityfromtheViewControllersPerspective.html#//apple_ref/doc/uid/TP40007457-CH2-SW1
我不認爲這是真的。至少,它首次被提及與iOS 6相關。 –
適用於iOS 7.謝謝! –
This technique爲我工作。
VoiceOver將通知accessibleElements數組中的第一個元素的值。這可以分類以滿足您的需求。
- 1. AngularJS選擇初始值不選擇
- 2. UITableView初始行選擇
- 3. 選擇初始空值
- 4. 選擇初始行CoreTable
- 5. DropDownListFor未選擇初始值
- 6. 隱藏時可以選擇VoiceOver控件
- 7. rpy2 nls初始參數選擇
- 8. 在AngularJs中初始化一個選擇
- 9. 如何設置UISegmentedControl的初始選擇
- 10. 選擇元素的初始值
- 11. 初始化UIPickerview中的選擇欄?
- 12. 填充選擇與初始數據
- 13. 的iOS indexPathsForSelectedRows和初始選擇
- 14. Angularjs選擇組和初始值
- 15. 選擇字段初始數據
- 16. UITabBarController初始化時沒有選擇
- 17. 指定表格的初始選擇`ModelChoiceField`
- 18. 初始化及與目標和選擇
- 19. 在select2中初始化多個選擇
- 20. reactjs反應選擇初始數據
- 21. 在Silverlight TextBox中選擇初始文本
- 22. JQuery的選擇二未初始化
- 23. 初始選擇的搜索欄
- 24. 初始化選擇2下拉jQuery的日期選擇器
- 25. AngularJS選擇:初始選擇不起作用
- 26. Jquery選項卡初始選項卡選擇
- 27. 如何初始化(並重新初始化)通過JavaScript引導選擇
- 28. 獲取選擇元素的初始選定值
- 29. 從CEdit控件中的初始化文本中刪除選擇(取消選擇)
- 30. Select2將數據附加到現有選擇後進行初始化選擇
這聽起來像是處理暫時的Game Center通知的方式:「使用此通知來提供有關不更新應用程序用戶界面(UI)或僅更新UI的事件的可訪問性信息。」我想專注於特定的UI元素。 –
嗯,我開始認爲我可能必須這樣做,但它確實不是正確的答案。 (在某些情況下,下一次滑動將顯示在被聚焦的元素上,因此您將再次聽到它的聲音。) –
視圖第一次出現時使用通知通知的另一個缺點是它的讀數通常被最初的VoiceOver選擇截斷。 – MusiGenesis