136 votes

Avertissement relatif à la description de contenu Android Lint

Je reçois un avertissement comme "[Accessibilité] Attribut contentDescription manquant sur l'image" pour imageview. en utilisant des peluches Android

Qu'est-ce que ça veut dire?

176voto

Santhosh Shettigar Points 4265

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

android:contentDescription="@string/desc"

Android Peluches soutien dans ADT 16 lance cet avertissement afin de s'assurer que l'image de widgets fournir un contentDescription.

Ceci définit le texte qui décrit brièvement le contenu de la vue. Cette propriété est utilisée principalement pour l'accessibilité. Depuis certains points de vue n'ont pas de représentation textuelle de cet attribut peut être utilisé pour fournir de telles.

Non textuels widgets comme ImageViews et ImageButtons doit utiliser le contentDescription attribut pour spécifier une description textuelle de l'widget tels que les lecteurs d'écran et autres outils d'accessibilité pour décrire l'interface utilisateur.

52voto

Dane White Points 734

Désactiver les avertissements de charpie vous causera facilement des problèmes plus tard. Il est préférable de spécifier contentDescription pour tous vos ImageViews. Si vous n'avez pas besoin d'une description, utilisez simplement:

 android:contentDescription="@null"
 

41voto

Gunnar Bernstein Points 853

Une autre option consiste à supprimer l’avertissement individuellement:

 xmlns:tools="http://schemas.android.com/tools"  (usually inserted automatically)
tools:ignore="contentDescription"
 

Exemple:

 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent" 
    tools:ignore="contentDescription" >

       <ImageView
            android:layout_width="50dp"
            android:layout_height="match_parent"
            android:adjustViewBounds="true"
            android:padding="5dp"
            android:src="@drawable/icon" />
 

25voto

Christ Points 106

Je vous recommande d'ajouter le contentDescription.

android:contentDescription="@string/contentDescriptionXxxx"

mais, soyons réalistes. La plupart des gens ne pas maintenir littérale de l'accessibilité. Encore, avec peu d'effort, vous pouvez mettre en place quelque chose pour aider les personnes handicapées.

<string name="contentDescriptionUseless">deco</string>
<string name="contentDescriptionAction">button de action</string>
<string name="contentDescriptionContent">image with data</string>
<string name="contentDescriptionUserContent">image from an other user</string>

.

La chose la plus importante à l'insu de l'utilisateur aura besoin de savoir, c'est "Où est le bouton que j'ai besoin de cliquer pour continuer"

Utilisation contentDescriptionAction pour quoi que ce soit cliquable.

utilisation contentDescriptionContent pour l'image avec informations (graphique, textAsImage, ...)

utilisation contentDescriptionUserContent pour tout contenu fourni par l'utilisateur.

utilisation contentDescriptionUseless pour tout le reste.

12voto

Sergio Carneiro Points 402

Comme il ne s'agit que d'un avertissement, vous pouvez le supprimer. Accédez à la présentation graphique de votre XML et procédez comme suit:

  1. Cliquez sur le bouton rouge en haut à droite

    entrer la description de l'image ici

  2. Sélectionnez "Désactiver le type de problème" (par exemple)

    entrer la description de l'image ici

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X