"Attribut de description de contenu manquant sur l'image" en XML

je reçois un avertissement au sujet de [accessibilité]attribut de description de contenu manquant sur l'image dans eclipse. Cet avertissement apparaît à la ligne 5 (déclarer ImageView ) dans le code XML ci-dessous.

cela ne fait aucune erreur lors de la compilation et de l'exécution de mon application. Mais je veux vraiment savoir pourquoi j'ai cet avertissement.

C'est mon fichier 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>

s'il vous Plaît m'aider à ce sujet et merci pour votre lecture.

183
demandé sur PhatHV 2012-03-16 05:34:13

6 réponses

suivez ce lien pour solution: Android Lint contentDescription warning

résolu cet avertissement en définissant l'attribut android:contentDescription pour mon ImageView

android: contentDescription= "@string/desc"

Android Lint support dans ADT 16 lance cet avertissement pour s'assurer que les widgets d'image fournissent une description de contenu

il s'agit d'un texte qui décrit brièvement le contenu de la vue. Ce la propriété est utilisée principalement pour l'accessibilité. Comme certains points de vue ne sont pas avez représentation textuelle de cet attribut peut être utilisé pour fournir tel.

les widgets Non textuels comme ImageViews et ImageButtons doivent utiliser l'attribut contentDescription spécifie une description textuelle de la widget tels que les lecteurs d'écran et autres outils d'accessibilité peut décrire de manière adéquate l'interface utilisateur.

Ce lien pour plus d'explications: l'Accessibilité, C'est l'Impact et les Ressources de Développement

de nombreux utilisateurs Android ont des handicaps qui les obligent à interagir avec leurs appareils Android de différentes manières. Ces inclure des utilisateurs qui ont des déficiences visuelles, physiques ou liées à l'âge qui les empêchent de voir complètement ou d'utiliser un écran tactile.

Android fournit des fonctionnalités d'accessibilité et des services pour aider ces les utilisateurs naviguent plus facilement sur leurs appareils, y compris le texte-parole, feedback haptique, trackball et d-pad expérience. Les développeurs d'applications Android peuvent profiter de ces services à rendre leurs applications plus accessibles et aussi construire leurs propres services d'accessibilité.

ce guide est pour rendre votre application accessible: rendre les applications plus accessibles

S'assurer que votre application est accessible à tous les utilisateurs est relativement facile, surtout lorsque vous utilisez l'interface utilisateur fournie par framework composant. Si vous n'utilisez ces composants standards que pour votre application, Il ya juste quelques étapes nécessaires pour assurer votre l'application est accessible:

  1. Étiqueter votre ImageButton , ImageView , texte électronique , case à cocher et autre utilisateur contrôles d'interface utilisant l'attribut android:contentDescription .

  2. faites toute votre interface utilisateur les éléments accessibles avec une orientation contrôleur, comme un trackball ou un d-pad.

  3. Testez votre application en activant les services d'accessibilité comme TalkBack et explorer par le toucher, et essayez d'utiliser votre application en utilisant seulement directionnelle.

246
répondu PhatHV 2017-05-25 12:56:23

ajouter android:contentDescription="@string/description" (statique ou dynamique) à votre ImageView. S'il vous plaît ne pas ignorer ou filtrer le message, parce qu'il est utile pour les personnes utilisant des méthodes d'entrée alternatives en raison de leur handicap (comme TalkBack, Tecla Access Shield etc etc).

63
répondu Jeroen 2013-01-15 09:23:04

mise à Jour:

comme indiqué dans les commentaires, le fait de placer la description à zéro indique que l'image est purement décorative et est comprise comme celle des lecteurs d'écran comme TalkBack.

ancienne réponse, Je ne supporte plus cette réponse:

pour tous ceux qui cherchent à éviter l'avertissement:

je ne pense pas que android:contentDescription="@null" est le meilleur solution.

j'utilise tools:ignore="ContentDescription" c'est ce qui est censé être.

assurez-vous d'inclure xmlns:tools="http://schemas.android.com/tools" dans votre disposition racine.

24
répondu Sotti 2017-06-17 09:48:27

l'avertissement est en effet ennuyeux et dans beaucoup (la plupart!) cas aucune description du contenu n'est nécessaire pour divers ImageViews décoratifs. La façon la plus radicale de résoudre le problème est juste de dire à la peluche d'ignorer ce contrôle. Dans Eclipse, allez dans " Android / Lint Error Checking "dans les préférences, trouvez" contentDescription "(c'est dans le groupe" Accessibility") et changez" Severity: "pour ignorer.

9
répondu AlexR 2012-12-19 12:02:33

Si vous n'avez pas de soins à tout cela:

    android:contentDescription="@null"

bien que je conseillerais les solutions acceptées, il s'agit d'un hack: d

8
répondu alap 2016-11-06 08:27:58

ajouter

tools:ignore="ContentDescription"

à votre image. Assurez-vous d'avoir xmlns:tools="http://schemas.android.com/tools" . dans votre disposition racine.

7
répondu Mwongera 2017-06-02 07:54:37