Выберите первый элемент в поле зрения для Voice Over

Я использую Xcode для создания приложения для iOS. Когда я перехожу к следующему контроллеру представления, он имеет объекты в следующем порядке сверху вниз на экране: метка, представление коллекции, кнопка. Когда я использую голос за кадром, я хочу, чтобы первый элемент на экране был в фокусе (метка). Однако, что бы я ни делал, по умолчанию всегда выбирается конкретная ячейка из представления коллекции (где-то в середине экрана). В пейзаже это другая ячейка, а в портрете другая ячейка. Но каждый раз это одна и та же ячейка. Я пробовал использовать UIAccessibilityPostNotification, а также использовать задержки и другие вещи. Кажется, ничего не работает.


person Hajra Javed    schedule 23.09.2019    source источник
comment
Пожалуйста, отредактируйте свой вопрос, включив весь соответствующий код, который вы уже пробовали. Пожалуйста, дайте ему прочитать Как создать минимальный, полный и проверяемый пример.   -  person Kamran    schedule 23.09.2019


Ответы (1)


Должен публиковаться при появлении нового вида, занимающего большую часть экрана.

При необходимости передайте элемент, к которому VoiceOver должен перейти после обработки уведомления.

UIKIT_EXTERN UIAccessibilityNotifications

UIAccessibilityScreenChangedNotification;

Вам необходимо предоставить

UIAccessibilityPostNotification(UIAccessibilityScreenChangedNotification, youLabel);
person Evgeniy Zelinskiy    schedule 10.02.2020