uso studio que nonnull metodos annotation android android-layout android-lint

nonnull - que es android studio



Android Lint contentDescription advertencia (6)

Como es solo una advertencia, puede suprimirlo. Vaya a la distribución gráfica de su XML y haga esto:

  1. Haga clic en el botón rojo de la esquina superior derecha

  2. Seleccione "Desactivar tipo de problema" (por ejemplo)

Recibo una advertencia como "[Accesibilidad] Falta el atributo de descripción de contenido en la imagen" para la vista de imagen. mientras usas pelusas android

Qué significa eso?


Los widgets no textuales necesitan una descripción de contenido de alguna manera para describir textualmente la imagen de modo que los lectores de las pantallas puedan describir la interfaz de usuario. Puede ignorar la propiedad xmlns:tools="http://schemas.android.com/tools"
tools:ignore="contentDescription"
xmlns:tools="http://schemas.android.com/tools"
tools:ignore="contentDescription"
xmlns:tools="http://schemas.android.com/tools"
tools:ignore="contentDescription"
o define la propiedad android:contentDescription="your description"


Otra opción es suprimir la advertencia individualmente:

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

Ejemplo:

<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" />


Resolvió esta advertencia al establecer el atributo android:contentDescription para mi ImageView

android:contentDescription="@string/desc"

La compatibilidad con Android Lint en ADT 16 arroja esta advertencia para garantizar que los widgets de imagen proporcionen un contentDescription.

Esto define texto que describe brevemente el contenido de la vista. Esta propiedad se usa principalmente para accesibilidad. Como algunas vistas no tienen representación textual, este atributo se puede usar para proporcionarlas.

Los widgets no textuales como ImageViews e ImageButtons deben usar el atributo contentDescription para especificar una descripción textual del widget de manera que los lectores de pantalla y otras herramientas de accesibilidad puedan describir adecuadamente la interfaz de usuario.


Si inhabilitas las advertencias de Lint, te meterás en problemas más adelante. Es mejor que solo especifiques contentDescription para todas tus ImageViews. Si no necesita una descripción, simplemente use:

android:contentDescription="@null"


Te recomiendo que agregues el contentDescription.

android:contentDescription="@string/contentDescriptionXxxx"

pero, seamos realistas La mayoría de las personas no mantienen el literal de accesibilidad. Aún así, con poco esfuerzo, puede implementar algo para ayudar a las personas con discapacidad.

<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>

.

Lo más importante que el usuario ciego deberá saber es "¿Dónde está el botón que necesito hacer clic para continuar?"

Use contentDescriptionAction para todo lo que se pueda hacer clic.

use contentDescriptionContent para la imagen con información (graph, textAsImage, ...)

use contentDescriptionUserContent para todo el contenido proporcionado por el usuario.

use contentDescriptionUseless para todo el resto.