It is possible to change the traversing order of accessibility elements by configuring the accessibilityElements array. You should try to avoid it, but one good reason for doing it is if the default order is illogical because of the visual layout.

Twitter app showing a profile screen. VoiceOver will focus by default its elements in this order: Header photo, back button, search button, more actions button, profile photo, notifications button, direct message button, follow button, account's name, etc. Maybe we could change the order so the first element is the back button and the second is the account's name, acting as a header for the screen. We can achieve that by overriding the accessibilityElements property of the view implementing the account header and return the elements in the order we want.

You may also find interesting...

What is the difference between isAccessibilityElement and accessibilityElementsHidden? The first one makes the view not accessible, but its subviews can still be accessible. The second one hides the view and all its subviews from assistive tech.

When making charts accessible, sometimes you may have just too many data points for the user to have to go one by one through all of them. In those cases, you can create accessibility elements that represent meaningful chunks of the graph.

Check isReduceTransparencyEnabled to lower transparency. A great example is Spotlight. Not only transparency is removed but it keeps the main color of the background, it feels personalized and contextual but reduces noise and improves contrast.

Created in Swift with Ignite.

Supporting Swift for Swifts