The default voiceover

The default VoiceOver behavior is to start at the toolbar and work its way down. In some cases, this feels unintuitive to me. One example - my app persists which Tab you were last on across sessions. But on iOS, the tab bar is at the bottom. Sighted users have immediate context. I explored trying to insert a VO bit on load to announce which Tab is active, but that didn't work well and would sometimes clash with other VoiceOver elements. Any guidance here? I'm not a VoiceOver user, so please let me know if I'm trying to change a default AX behavior that shouldn't be messed with. But I want to make sure a VO user has the right context of where they're being dropped into.

Answered by Engineer in 892261022

If I understand your question correctly, you want to ensure that VoiceOver lands on the Tab bar at the bottom of your application as the first element. You can arrange the order of your accessibility elements using the accessibilityElements API.

accessibilityElements return an array of children UI elements and VoiceOver follow the order of the elements in this array while navigating. In your case this might look like:

- (NSArray *)accessibilityElements {
      return @[self.tabBar, self.mainView];
  }

Note that the Tab bar's container element needs to implement this method.

Let me know if this helps or if you have more questions!

If I understand your question correctly, you want to ensure that VoiceOver lands on the Tab bar at the bottom of your application as the first element. You can arrange the order of your accessibility elements using the accessibilityElements API.

accessibilityElements return an array of children UI elements and VoiceOver follow the order of the elements in this array while navigating. In your case this might look like:

- (NSArray *)accessibilityElements {
      return @[self.tabBar, self.mainView];
  }

Note that the Tab bar's container element needs to implement this method.

Let me know if this helps or if you have more questions!

The default voiceover
 
 
Q