ContentDescription = "@ null" una mala idea?

Lint se queja hey establecer un contentDescription. Así que para evitar la creación de una cadena de ponerlo en nulo.

android:contentDescription="@null" 

Esto parece tranquilizar las quejas de pelusa. Estoy un poco perdido por qué tengo que establecer una referencia de cadena a la contentDescription. ¿Cuál es el propósito de esto? ¿Por qué necesitaría esto alguna vez? Y esencialmente ponerlo a nulo, ¿es una buena idea?

Es por la accesibilidad para los ciegos. En cuanto a la accesibilidad, las aplicaciones que utilizan la función contentDescription ayudan a las personas ciegas a navegar utilizando las capacidades de conversión de texto a voz de Android. Así que si alguien selecciona un ImageButton través de un trackpad o algo así, el TTS puede hablar el contentDescription para que puedan navegar fácilmente por la aplicación. Vea esto para más información.

Para responder a su pregunta: podría silenciar la salida de la pelusa, pero no está haciendo nada necesariamente malo o bueno.

Sé que esta pregunta fue hecha hace un rato, pero para el beneficio de nuevos lectores que pueden funcionar a través de esto:

Brian es absolutamente correcto en lo que se utiliza contentDescription. Sin embargo, hay momentos en que no sólo es apropiado sino que se prefiere establecerlo en @null. Si una imagen es puramente decorativa y no se puede hacer clic o está relacionada con el contenido, debe definir el contenido de @null. De lo contrario, establezca algo significativo.

Recuerde que cualquier cosa definida como un contentDescription es leída en voz alta por el dispositivo cuando se utiliza un lector de pantalla. Imagine en su mente un sencillo cuadro de diálogo emergente. Ahora, mentalmente escuche estas dos descripciones de contenido diferentes para el mismo diálogo:

  • "Information icon. Do you want to continue? Fancy horizontal rule. Button. Button."

    -vs-

  • "Do you want to continue? Submit. Cancel."

Las descripciones de contenido que no están bien pensadas terminan sonando mudo. Los elementos como los iconos de texto destacado que simplemente repiten el texto junto a ellos o las fronteras de fantasía que no contribuyen al significado de la página deben suprimirse con @null. A la inversa, todo lo que se puede hacer clic no sólo debe tener una descripción, sino que debe tener una descripción significativa . Si intenta establecer @null en algo que se puede hacer clic, el dispositivo hablará "Botón" en su lugar. Cambiar la descripción a "Botón verde" no ayuda. No haga que sus usuarios adivinen lo que es "Botón Verde"!

Si no estás seguro, no olvides que puedes habilitar TalkBack en tu teléfono. Está preinstalado en la mayoría de los dispositivos o se puede obtener en Play Store. Necesitará un d-pad en los dispositivos más antiguos, o explorar por el toque en ICS y superiores.

  • ExpandableListView dentro de una vista de desplazamiento
  • Disposición de Android: posicione el elemento debajo de la vista inferior
  • Estilizar un texto de edición de Android para que parezca un selector de lista desplegable / spinner
  • Modificación dinámica de Layouts que de Layouts estáticos
  • Ellipsize no funciona para textview dentro de la fila de la tabla
  • ¿Es posible mostrar la vista previa de RecyclerView en el editor de planos con orientación horizontal?
  • Alinear el elemento en la esquina de la ronda Dispositivo de desgaste
  • Cómo agregar fragmentos de forma programática en relativelayout
  • FragmentTabHost: No se conoce ninguna pestaña null
  • Cómo implementar un ViewPager con diferentes Fragmentos / Layouts
  • Botón medio ancho de la pantalla
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.