Reputation: 804
Voice over reads the whole cell (all the items without pauses and a need to select next element), then after each right swipe it reads each of the items again one by one. I can get read of the second but not the first. I need to remove the focus from the cell as a whole, and have Voice Over announce its labels one by one, as if it wasn't a table cell at all.
I tried playing with accessibilityElementsHidden
, shouldGroupAccessibilityChildren
and isAccessibilityElement
, but I only managed to remove Voice Over for the cell completely or remove separate items reading, leaving reading it as a whole, which is the opposite of what I need. How do I remove the focus from the ell as a whole leaving focuses for all of its items separately?
Upvotes: 0
Views: 1725
Reputation: 227
You can do it by adding the following lines either in awakeFromNib
or to initializers of the cell.
isAccessibilityElement = false
accessibilityElements = [subview1, subview2, ...] // add all the accessible subviews
Upvotes: 0
Reputation: 804
Just make every separate item accessible, with sensible accessibility label, only then VoiceOver stops announcing the whole cell.
Upvotes: -1