Xamarin.Forms Accessibility

Building an accessible application ensures that the application is usable by people who approach the user interface with a range of needs and experiences.

Making a Xamarin.Forms application accessible means thinking about the layout and design of many user interface elements. For guidelines on issues to consider, see the Accessibility Checklist. Many accessibility concerns such as large fonts, and suitable color and contrast settings can already be addressed by Xamarin.Forms APIs.

The Android accessibility and iOS accessibility guides contain details of the native APIs exposed by Xamarin, and the UWP accessibility guide on MSDN explains the native approach on that platform. These APIs are used to fully implement accessible applications on each platform.

Xamarin.Forms does not currently have built-in support for all of the accessibility APIs available on each of the underlying platforms. However, it does support setting automation properties on user interface elements to support screen reader and navigation assistance tools, which is one of the most important parts of building accessible applications. For more information, see Automation Properties.

Xamarin.Forms applications can also have the tab order of controls specified, to improve usability and accessibility. For more information, see Keyboard Accessibility.

Other accessibility APIs (such as PostNotification on iOS) may be better suited to a DependencyService or Custom Renderer implementation. These are not covered in this guide.

Testing Accessibility

Xamarin.Forms applications typically target multiple platforms, which means testing the accessibility features according to the platform. Follow these links to learn how to test accessibility on each platform:

Find more Xamarin videos on Channel 9 and YouTube.