Подтвердить что ты не робот

Первоначальный выбор VoiceOver

Я добавляю поддержку VoiceOver для своего приложения. Пока что так хорошо, но мне очень хотелось бы указать, какой элемент является первым, который был указан после UIAccessibilityScreenChangedNotification. Я не видел способа сделать это. Сделать что-то сводным элементом на самом деле не кажется. Я что-то пропустил?

4b9b3361

Ответ 1

Это всегда можно было сделать.

Просто напишите что-нибудь по строкам:

- (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

Ответ 2

Я не думаю, что есть значение API, которое указывает порядок чтения, за исключением использования значения Сводного элемента при запуске - это по дизайну.

Итак, вам нужно будет проверить порядок и значение по умолчанию для элементов UIKit или любых настраиваемых элементов управления, потому что это зависит от вашего дизайна. Вы также можете отмечать элементы как недоступные элементы, чтобы они не были "прочитаны", доступные элементы, считанные по умолчанию, и контейнеры для доступных элементов, чтобы вы могли лучше контролировать свои предполагаемые взаимодействия. Я не знаю, поможет ли выбор элемента.

Я так понимаю, вы уже используете Accessibility Inspector для тестирования своего приложения перед тестированием на iOS.

Если вам нужен какой-то фон по этой теме, "Руническая работа с поддержкой VoiceOver" и Доступность Gemmell для приложений, возможно, стоит прочитать.

Ответ 3

Как насчет использования UIAccessibilityAnnouncementNotification?

Ответ 4

Этот метод работал у меня.

VoiceOver объявит значение первого элемента в массиве доступныхElements. Это можно отсортировать в соответствии с вашими потребностями.