iOS: UIAccessibility (Voice Over) с флажком не работает должным образом - PullRequest
0 голосов
/ 17 октября 2018

Я использую закадровый флажок.

Проблема, с которой я здесь сталкиваюсь, заключается в том, что когда пользователь выбирает флажок в первый раз, когда он говорит «флажок выбран» (что правильно в соответствии с набором accessibilityLabel), но в следующий раз, когда пользователь пытается отменить выбор, он говорит«флажок выбран, флажок снят», где должно быть только «флажок снят», и наоборот.

Итак, что здесь происходит, так это то, что ранее установленный accessibilityLabel не очищается, и когда пользователь пытается выбрать или отменить выбор, он принимает как предыдущий, так и текущий установленный ярлык.

Примечание - используя пользовательский флажок, переключая UIB-кнопку с выбранным / отмененным выбором изображения.

Как решить этот конфликт?

1 Ответ

0 голосов
/ 07 декабря 2018

Если вы создаете свой флажок благодаря элементу UIButton, я предлагаю:

  • Снимите отметку с кнопки UIAccessibilityTraits.
  • Обеспечьте четкую подсказку, когда флажок установленсначала выбрано: "двойное касание для изменения значения" .
  • Обновите метку доступности вашей кнопки благодаря IBAction при переключении поля.

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

Выполнение этих шагов обеспечит соответствующий пользовательский опыт с без флажка Конфликт VoiceOver что вы заметили.

...