Accesibilidad, Xamarin

Explorando Automation Properties en Xamarin Forms

¡Imagina que estás creando una aplicación que puede leer en voz alta la descripción de cada elemento con el que estás interactuando! Esto sería genial porque esto permitirá que un mayor número de usuarios usen tu App, por ejemplo, una persona con un campo visual reducido estará muy contenta con esto. 💕 Esto se llama Accesibilidad y es extremadamente importante tenerlo en cuenta cuando creamos una aplicación!


¡Estamos listos para empezar! 😎

🔧 Información de plataformas

Podemos lograr la funcionalidad de lectura en voz alta gracias a la herramienta de lectura incorporada en cada plataforma la cual nos permite como usuarios escuchar la narración sobre lo que está sucediendo con la aplicación. Para acceder a estas funcionalidades utilizamos los Automation Properties. Estas herramientas de lectura en voz alta tienen diferentes nombres según la plataforma en la que se encuentre; ¡Veamos cuáles son estos nombres!

La imagen tiene un atributo ALT vacío; su nombre de archivo es image-2.png

📒 Si deseas saber más información sobre estos, puede ingresar a los siguientes enlaces: TalkBackVoiceOverNarrator.


¿Cómo lo podemos aplicar? 🤔

Es muy fácil integrar esta función en nuestras Apps, existen cuatro Attached Properties que nos ayudarán a lograrlo, solo debes agregar cada una de las propiedades (según tu necesidad) en el control específico que quieres que sea visible para el lector. Veamos cuáles son estas propiedades adjuntas:

La imagen tiene un atributo ALT vacío; su nombre de archivo es Screen-Shot-2021-07-01-at-7.04.13-PM.png

🔹 AutomationProperties.IsInAccessibleTree

Recibe un valor booleano que indica si el control al que se agregó esta propiedad está disponible para ser leído por los lectores de pantalla, por lo tanto es esta la propiedad permite que las demás propiedades cumplan su función, para ello debe tener un valor Verdadero (True).

🔹 AutomationProperties.Name

Una vez agregada la propiedad anterior, pasaremos a esta que se encarga de tener la descripción, breve, precisa y concisa del elemento al que pertenece debido a que será leído por los lectores de cada plataforma, por lo tanto es importante que no olvides esta propiedad para que el usuario siempre pueda estar informado sobre lo que sucede en su interacción con la App.

🔹 AutomationProperties.HelpText

Aquí podemos agregar un texto un poco más largo, tambien lo podemos ver como una especie de ToolTip asociado con el elemento que será leído. (En algunas plataformas, los controles de edición (como Entry) pueden omitir esta propiedad y reemplazarlas por el valor del texto contenido en la propiedad PlaceHolder).

🔹 AutomationProperties.LabeledBy

Permite que otro elemento (control) indique la información de accesibilidad para el elemento actual, por ejemplo cuando estamos diseñando una pantalla que necesita un Entry para escribir el nombre, agregamos un Label con su descripción para una mejor experiencia de usuario, este es el mismo objetivo de LabeledBy.

🌟 Es todo, con estas simples propiedades puedes hacer que las interacciones de tu aplicación se lean correctamente. ¡Espero puedas aplicarlo y te sea de mucha utilidad!


¡Gracias por leer mi artículo! 💚💕

Referencias: https://docs.microsoft.com/en-us/xamarin/xamarin-forms/xaml/attached-properties?WT.mc_id=DT-MVP-5003353

Artïculo en inglés: https://askxammy.com/exploring-automation-properties-in-xamarin-forms/

Tagged , , ,

Leave a Reply

Your email address will not be published. Required fields are marked *