Я получаю предупреждение об отсутствии атрибута [Accessibility] contentDescription на изображении в затмении. Это предупреждение показано в строке 5 (объявить ImageView
) в XML-коде ниже.
Это не делает никаких ошибок при сборке и запуске моего приложения. Но я действительно хочу знать, почему я получаю это предупреждение.
Это мой XML-файл:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/contact_entry_image"
android:src="@drawable/ic_launcher"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<TextView
android:id="@+id/contact_entry_text"
android:text=""
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textSize="30sp"
/>
</LinearLayout>
Пожалуйста, помогите мне в этом и спасибо за ваше чтение.
android:contentDescription
этот атрибутimageview
, просто предложение, я думаю, вы можете проигнорировать это, оно не делает ошибку компиляции, также вы можете проверитьhttp://developer.android.com/reference/android/view/View.html#attr_android:contentDescription
Ответы:
Перейдите по этой ссылке для решения: Android Lint contentDescription warning
Ссылка для объяснения: доступность, влияние и ресурсы для разработки.
Это руководство для того, чтобы сделать ваше приложение доступным: сделать приложения более доступными
источник
Добавьте
android:contentDescription="@string/description"
(статический или динамический) в ваш ImageView. Пожалуйста, не игнорируйте и не фильтруйте сообщение, потому что оно полезно для людей, использующих альтернативные методы ввода из-за их инвалидности (например, TalkBack, Tecla Access Shield и т. Д.).источник
Обновлено:
Как указано в комментариях, установка описания на ноль указывает на то, что изображение является чисто декоративным и понимается как средство чтения с экрана, например TalkBack.
Старый ответ, я больше не поддерживаю этот ответ:
Для всех людей, ищущих, как избежать предупреждения:
Я не думаю, что
android:contentDescription="@null"
это лучшее решение.Я использую
tools:ignore="ContentDescription"
то, что должно быть.Убедитесь, что вы включили
xmlns:tools="http://schemas.android.com/tools"
в свой корневой макет.источник
@null
в качестве contentDescription - это способ явно сказать, что это изображение чисто декоративное. Простое игнорирование предупреждения не является правильным решением.@null
говорит TalkBack, что изображение является декоративным. Вы не должны игнорировать предупреждение, поскольку размещение@null
информирует TalkBack, а не заставляет его думать, что оно отсутствует и должно быть там.Добавить
к вашему образу. Убедитесь, что у вас есть
xmlns:tools="http://schemas.android.com/tools" .
в вашем корневом макете.источник
Предупреждение действительно раздражает, и во многих (большинстве!) Случаях для различных декоративных ImageViews не требуется contentDescription. Самый радикальный способ решить проблему - просто попросить Линт проигнорировать эту проверку. В Eclipse перейдите к «Проверка ошибок Android / Lint» в «Настройках», найдите «contentDescription» (он находится в группе «Доступность») и измените «Серьезность:» на «Пропустить».
источник
contentDescription
играть в игру, в которой требуется зрение, чтобы играть?Если вам все равно, сделайте это:
Хотя я бы посоветовал принятые решения, это хак: D
источник
В дальнейшем, для графических элементов, которые являются чисто декоративными , лучшим решением будет использование:
Это имеет смысл, если ваша минимальная версия SDK не менее 16, поскольку устройства с более низкими версиями будут игнорировать этот атрибут.
Если вы застряли с поддержкой более старых версий, вы должны использовать (как уже отмечали другие):
Источник: https://developer.android.com/guide/topics/ui/accessibility/apps#label-elements
источник
Это предупреждение пытается улучшить доступность вашего приложения.
Чтобы отключить предупреждение о пропущенном описании контента во всем проекте, вы можете добавить его в свой модуль приложения build.gradle
источник
Это дает вам предупреждение, потому что описание изображения не определено.
Мы можем устранить это предупреждение, добавив этот код ниже в Strings.xml и activity_main.xml
Добавьте эту строку ниже в Strings.xml
Также добавьте эту строку в activity_main.xml
strings.xml
источник