Есть ли Android эквивалент iOS UIAccessibilityTraits? - PullRequest
0 голосов
/ 25 февраля 2020

В моем приложении Android есть пользовательский макет, который используется в качестве кнопки - он состоит из некоторых TextViews и ImageView, кроме того, он имеет некоторый градиентный фон.

I ' Теперь я настраиваю свое приложение, чтобы соответствовать правилам доступности. Для этого мне нужно будет преобразовать этот макет в кнопку, чтобы TalkBack мог правильно указать действие, что весь этот макет является интерактивным и служит как кнопка.

Я знаю, что на iOS есть возможность установить UIAccessibilityTraits, чтобы рассматривать такое представление как кнопку - такое решение избавило бы меня от огромного объема работы с точки зрения миграции.

Есть ли любое подобное решение на Android для этого? Какой подход я должен использовать, чтобы TalkBack правильно распознал этот макет?

1 Ответ

1 голос
/ 26 февраля 2020

Нет, в Android нет понятия черт доступности, но вы все равно можете получить хороший опыт доступа без необходимости специально конвертировать ваш макет в Button.

В общем, наиболее важно, чтобы TalkBack (или какой-либо другой сервис доступности - помните, что это не просто TalkBack) способен обнаружить, что виджет кликабелен, и иметь возможность прочитать связное описание того, что он делает. Дополнительная информация о том, что это кнопка, в частности, не очень полезна, особенно потому, что существует так много различных элементов пользовательского интерфейса, что часто возникает очень неоднозначный вопрос, является ли что-то даже кнопкой.

Вы можете проверить это, выбрав его в TalkBack и убедившись, что он правильно читает описание контента, произносит что-то вроде «Двойное касание для активации» и выполняет правильное действие при двойном касании.

Если это не правильно, убедитесь, что описание контента , кликабельный флаг и действие клика правильно установлены в AccessibilityNodeInfo виджета.

...