When I set isAccessibilityElement = NO
on a view that contains subviews with isAccessibilityElement = YES
, VoiceOver still detects them.
I need to switch off accessibility for an entire view hierarchy that must be handled differently by VoiceOver. How can I achieve this without having to loop through every single item in the object graph and mess with it's setting?
self.accessibilityElementsHidden = YES;
This makes all subviews hidden from accessibility.
I would try setting the accessibilityElementsHidden
property of the main view to YES. If that does not what you want, I would try overriding the UIAccessibilityContainer
methods on the main view to return 0 children.
Just set the accessibilityElementsHidden property.
来源:https://stackoverflow.com/questions/17897392/how-to-disable-accessibility-for-a-view-including-all-its-subviews