Comments
Помечаем картинку как .image и подписываем .accessibilityLabel = «Пицца Пепперони Фреш с перцем».


а с заголовком под картинкой не конфликтует?

Немного конфликтует. Выходов несколько.


  • Целиком скрыть картинку. Не смотря на проблему пустого места, ценности у картинки для незрячего немного.
  • Кратчайшим образом подписать картинку, например, «пицца».
  • Оставить полное название в картинке, но скрыть от VoiceOver текст с заголовком.

Еще можно пропустить картинку и поставить фокус на заголовок при открытии экрана через UIAccessibility.postNotification. Об этом будет в следующей статье :-)


В любом случае, это не будет большой проблемой для незрячего. Чуть неудобно, но не более.

Это вообще не проблема. Проблема когда ничего не подписано, и как бы пользователь не искал хоть что-то, а в ответ тишина. Тем более экранные дикторы обычно перед текстом заголовка так и говорят: заголовок такой-то. А на картинке: графика такая-то подпись. Так что лучше картинки тоже подписывать и не пропускать, хоть от них действительно толку мало, но все же они помогают незрячему при навигации по приложению, так как дополняют образ интерфейса. Построив интерфейс программы в своем воображении, включая эти картинки, потом проще искать прочие компоненты управления.
• Оставить полное название в картинке, но скрыть от VoiceOver текст с заголовком.

А вот это точно не стоит делать. В скрин ридерах есть выбор навигации, например: по символам, по словам, по заголовкам, по абзацам, и так далее. Навигация по заголовкам очень удобная и незрячие ею очень часто пользуются. Это касается и любых сайтов. Очень удобно прыгнуть по заголовку и попасть сразу на начало статьи, например. И не листать все меню, баннеры и прочие надстройки. И очень опечаливают те сайты, где не используют заголовки настоящие, которые тегом html идут, а делают обычный текст и просто свойствами CSS выделяют его. Крайне неудобно пользоваться такими сайтами. Ну обычно их сразу и покидают если есть более удобные альтернативы.
Может подскажете, как вызвать произношение accessibilityHint при использовании VoiceOver? Почему-то в моем случае эти хинты не произносились.

В настройках они включены?
Универсальный доступ → VoiceOver → Детализация → Подсказки

Only those users with full accounts are able to leave comments. Log in, please.