iOS: UIAccessibility (голос за кадром) с флажком не работает должным образом

Я использую голос за флажком.

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

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

Примечание. Использование пользовательского флажка для переключения UIButton с выбранным/не выбранным изображением.

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


person iTink    schedule 17.10.2018    source источник


Ответы (1)


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

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

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

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

person XLE_22    schedule 07.12.2018