Поддержка доступности
Мы стараемся как можно больше упростить поддержку доступности. DivKit автоматически проставляет правильные типы в соответствии с платформой таким объектам, как text, input, select, slider и tabs. Но мы не можем дать пользователю дополнительную информацию, задать корректное описание (description) и т. п. Поэтому image и separator по умолчанию исключены из доступности.
Если элемент имеет действия на нажатие (одинарное или двойное) — это также будет автоматически озвучено accessibility-сервисом.
Для настройки доступности можно использовать объект accessibility. Пример:
"accessibility": {
       "type": "button",
       "hint": "Tap on the button to play music.",
       "description": "Play music",
       "state_description": "Clicked",
       "is_checked": true,
       "mode": "merge"
 }
- type— роль элемента. Используется для правильной идентификации элемента accessibility-сервисом.
- hint— подсказка, что произойдет при взаимодействии. Читается после- description.
- description— основное описание элемента.
- state_description— описание текущего состояния элемента. Например, для переключателя это может быть состояние- включен/- выключен.
- is_checked— показывает текущий статус чекбоксов, переключателей и подобных интерактивных элементов. Устанавливается в- true, когда элемент выбран/отмечен, и в- false, когда не выбран. Помогает accessibility-сервисам правильно озвучивать состояние пользователям.
- mode— способ организации дерева accessibility. Всего существует 3 режима:- default— элемент и все поддерево разбираются по отдельности;
- merge— элемент и все его поддерево воспринимаются как единое целое;
- exclude— элемент и все поддерево недоступно для accessibility.
 
Роли элемента
- none— роль элемента отсутствует.
- button— тип кнопки. Если элемент будет иметь активные действия на одиночное или продолжительное нажатие — это также будет озвучено.
- image— тип изображения. Мы не сможем дать подробностей про ваше изображение, поэтому рекомендуем указать- descriptionдля этого типа.
- text— тип текста.
- edit_text— тип поля ввода.
- header— тип заголовка.
- list— тип списка. Элементы внутри будут читаться подряд.
- auto— автоматическая простановка типа. Также является типом по умолчанию.
Узнать больше
Следите за новостями DivKit в Telegram-канале: http://t.me/divkit_news.
Также вы можете обсуждать интересующие вас темы в сообществе пользователей DivKit в Telegram: https://t.me/divkit_community_ru.