Search code examples
iosaccessibilityuipickerviewvoiceoveruiaccessibility

Accessibility for UITextField with custom inputView (VoiceOver)


I have an UITextField that uses a UIPickerView with two columns as inputView.

When the user taps on the Target Range cell, the picker at the bottom appears

Image: When the user taps on the Target Range cell, the picker at the bottom appears.

I'm wondering how to optimise the VoiceOver experience for this setup.

  1. When tapping the text field VoiceOver says "[...] Insertion Point at end" This is misleading to the user, because he doesn't need to care about the caret. How can I fix that?
  2. I'm not sure: Should the focus change to the picker view automatically after the double tapping the text field?
  3. How to communicate to the user that there are two components in the UIPickerView and that the left one represents the lower target range and the right one represents the upper target range?

Thanks in advance.


Solution

  • 1) Use the STATIC TEXT TRAIT on the input field.

    2) Yes

    3) I'd separate the two values. Have a picker for each, instead of this advanced picker with both.

    If this isn't possible, you'll want to add that information in. That information might make a good accessibilityHint. It's something that users that frequent your app will become accustomed to, so it's not crucial information. But, new users might need reminded.

    Note: users can turn off hints, so if you feel that information is critical, it would be better to bundle it in with the accessibilityLabel.