Practicas aplicadas para accesibilidad - 5x5x5-cube/vinilos-app GitHub Wiki

Buenas prácticas aplicadas para mejorar la accesibilidad

Durante el desarrollo del proyecto Vinilos App, se han integrado diversas buenas prácticas enfocadas en mejorar la accesibilidad de la aplicación, con el objetivo de ofrecer una experiencia más inclusiva a todos los usuarios. A continuación, se destacan las más relevantes:

1. Uso de contentDescription en imágenes y botones interactivos

Todas las imágenes de contenido y botones relevantes en la interfaz incluyen un atributo contentDescription, lo que permite a los lectores de pantalla describir adecuadamente cada elemento al usuario.

Ejemplo:

Copiar
Editar
AsyncImage(
    model = performer.image,
    contentDescription = "Imagen de ${performer.name}",
    ...
)

2. Etiquetas textuales visibles y claras en todos los campos de entrada

Cada OutlinedTextField cuenta con un label accesible que describe su propósito, facilitando la navegación para personas que usan lectores de pantalla.

Ejemplo:

Copiar
Editar
OutlinedTextField(
    value = name,
    onValueChange = { viewModel.updateName(it) },
    label = { Text("Nombre") },
    ...
)

3. Separación semántica de elementos y uso de componentes adecuados

Se utilizó LazyColumn y componentes como Row y Column para mantener una estructura jerárquica y semántica clara, lo cual mejora la navegación por teclado o asistentes de accesibilidad.

4. Botones con textos descriptivos y sin ambigüedad

Se evitó el uso de botones con etiquetas genéricas como "OK" o "Click aquí". En su lugar, se usan textos que indican claramente la acción, como "Guardar", "Cancelar" o "Ver".

Ejemplo:

Copiar
Editar
Button(onClick = { /* acción */ }) {
    Text("Guardar")
}

5. Contraste mínimo razonable en colores de texto e íconos

Aunque aún se pueden aplicar mejoras según el análisis del scanner, se ha mantenido una paleta de colores base con contrastes razonables para evitar fatiga visual.