Всегда ли VoiceOver игнорирует просмотры с шириной и высотой ноль iOS? - PullRequest
1 голос
/ 13 марта 2020

Чтобы Voice Over игнорировал UILabel , достаточно ли установить для его свойства text значение nil или также необходимо установить для свойства isHidden также значение true?

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

1 Ответ

1 голос
/ 16 марта 2020

Для того, чтобы VoiceOver игнорировал [UILabel], он устанавливает для текста значение, равное нулю, или я должен также установить для свойства isHidden значение true?

для элемента, который будет игнорироваться VoiceOver, можно *1007* установить для его свойства isAccessibilityElement значение false ? ... среди прочих способов, которые зависят от того, какие элементы вы ' работы с ⟹ для UILabel этого достаточно.
Установка его текста на ноль работает в этом случае, но это скорее помеха, чем правильное решение.

Элементы Graphi c не должны исчезать только во время работы VoiceOver, потому что ваш интерфейс должен быть одинаковым для всех : например, у вас могут быть люди, не имеющие сообщений, которые могут использовать ваше приложение с или без VoiceOver, и они могут быть сбиты с толку, если они не имеют одинакового визуального опыта в обоих направлениях. 101

Я проверил это в примере проекта и увидел, что Voice Over игнорирует метку, когда текст установлен на ноль. Могу ли я всегда рассчитывать на это?

Нет, вы не можете , потому что он работает для UILabel, но если вы попытаетесь сделать то же действие с помощью кнопки или кнопки текстовое поле, вы заметите, что оно не будет работать определенно из-за их 'accessibilityTraits` .

Так что я могу предположить, что любой вид с шириной и высотой ноль Voice Over будет игнорировать Voice Over независимо от того, скрыт он или нет?

Да, вы можете , потому что {width = height = zero} означает, что этот элемент не является graphi c элемент, который VoiceOver должен анализировать и считывать.
Но, даже если он работает, Я не рекомендую следовать по этому пути , чтобы скрыть элементы в VoiceOver, как я уже объяснял ранее. ?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...