Provide a set of methods that view subclasses use to make subcomponents accessible as separate elements.


A view might contain icons or drawn text that, to end users, appear and function as separate items. But because these components are not implemented as instances of UIView, they are not automatically accessible to users with disabilities. Therefore, such a container view should implement the UIAccessibilityContainer methods to supply accessibility information about these components to assistive apps such as VoiceOver.

A view that implements the UIAccessibilityContainer informal protocol uses the UIAccessibilityElement method initWithAccessibilityContainer: to create an accessibility element to represent each non-view component that needs to be accessible to users with disabilities. Note, however, that the container view itself is not an accessibility element because users interact with the contents, not with the container. This means that a container view that implements the UIAccessibilityContainer methods must set to NO the isAccessibilityElement property of the UIAccessibility informal protocol.

The order of accessibility elements within the container view should be the same as the order in which the represented elements are presented to the user, from top-left to bottom-right.


Providing Information About Accessibility Elements

- accessibilityElementCount

Returns the number of accessibility elements in the container.

- accessibilityElementAtIndex:

Returns the accessibility element at the specified index.

- indexOfAccessibilityElement:

Returns the index of the specified accessibility element.


An array of the accessibility elements in the container.


The type of container used for accessibility elements, such as tables or lists.


Constants indicating the type of content stored in a data-based container.

See Also



A set of methods that provide accessibility information about views and controls in an app's user interface.

Supporting VoiceOver in Your App

Learn how to make your iOS app more accessible to users who are blind or have low vision by adding VoiceOver support.