Я получаю предупреждение: «[Доступность] Отсутствует атрибут contentDescription на изображении» для просмотра изображения. при использовании Android lint
Что это значит?
android
android-layout
android-lint
Сантош Шеттигар
источник
источник
<string name="none"></string>
а затем использовалandroid:contentDescription="@string/none"
Ответы:
Устранено это предупреждение, установив атрибут
android:contentDescription
для моего ImageViewПоддержка Android Lint в ADT 16 выдает это предупреждение, чтобы убедиться, что виджеты изображений предоставляют описание contentDescription.
Это определяет текст, который кратко описывает содержимое представления. Это свойство используется в основном для доступности. Поскольку некоторые представления не имеют текстового представления, этот атрибут можно использовать для предоставления такого.
Нетекстовые виджеты, такие как ImageViews и ImageButtons, должны использовать атрибут contentDescription, чтобы указать текстовое описание виджета, чтобы программы чтения с экрана и другие инструменты доступности могли адекватно описывать пользовательский интерфейс.
источник
Отключение предупреждений о Lint может впоследствии легко вызвать у вас проблемы. Вам лучше просто указать contentDescription для всех ваших ImageView. Если вам не нужно описание, просто используйте:
источник
Другой вариант - подавить предупреждение по отдельности:
Пример:
источник
Рекомендую добавить описание contentDescription.
но давайте будем реалистами. Большинство людей не поддерживают буквальное значение доступности. Тем не менее, без особых усилий можно реализовать что-нибудь, чтобы помочь людям с ограниченными возможностями.
,
Самая важная вещь, которую нужно знать слепому пользователю, - это «Где находится кнопка, которую мне нужно нажать, чтобы продолжить».
Используйте contentDescriptionAction для всего, что можно щелкнуть.
используйте contentDescriptionContent для изображения с информацией (график, textAsImage, ...)
используйте contentDescriptionUserContent для всего предоставленного пользователем контента.
для всего остального используйте contentDescriptionUseless.
источник
Поскольку это всего лишь предупреждение, вы можете его подавить. Перейдите в графический макет вашего XML и сделайте следующее:
Нажмите красную кнопку в правом верхнем углу
Выберите «Отключить тип проблемы» (например)
источник
Если вы хотите элегантно подавить это предупреждение (поскольку вы уверены, что специальные возможности не нужны для этого конкретного ImageView), вы можете использовать специальный атрибут:
источник
Перейдите в
Gradle
файл (приложение модуля), добавьте ниже блок кодаБольше никаких предупреждений! счастливое кодирование
источник
Нетекстуальные виджеты нуждаются в описании контента, чтобы текстуально описать изображение, чтобы средства чтения с экрана могли описывать пользовательский интерфейс. Вы можете игнорировать свойство или определить свойство
xmlns:tools="http://schemas.android.com/tools"
tools:ignore="contentDescription"
android:contentDescription="your description"
источник
ContentDescription
необходимо для доступности Android. В частности, для функции чтения с экрана. Если вы не поддерживаете специальные возможности Android, вы можете проигнорировать это с помощью настройки Lint .Так что просто творите
lint.xml
.И положил в
app
папку.источник
Для чисто декоративных графических элементов установите для соответствующих XML-атрибутов android: contentDescription значение «@null».
Если ваше приложение поддерживает только устройства под управлением Android 4.1 (уровень API 16) или выше, вы можете вместо этого установить для XML-атрибутов android: importantForAccessibility этих элементов значение «no».
источник
Поскольку мне нужно, чтобы ImageView добавил значок только для эстетики, я добавил
tools:ignore="ContentDescription"
в каждый ImageView, который у меня был в моем XML-файле.Я больше не получаю сообщений об ошибках
источник