輔助功能容器

VoiceOver 可以在 iOS 上導航許多應用程式,因為大多數 UIKit 類都實現了 UIAccessibilityProtocol。使用 UIView 不代表螢幕元素的功能(包括利用 Core Graphics 或 Metal 執行繪圖的應用程式)必須描述這些元素以便於訪問。從 iOS 8.0 開始,可以通過在包含不可訪問元素的 UIView 上分配屬性來完成此操作:

myInaccessibleContainerView.accessibilityElements = @[elements, that, should, be, accessible];

陣列中的每個物件都可以是 UIAccessibilityElement 的例項或任何其他符合 UIAccessibilityProtocol 的類。應按使用者應導航的順序返回子元素。作為應用程式作者,你可以使用輔助功能容器覆蓋 VoiceOver 滑動導航的預設左上角到右下角的排序。鑑於 UIView 實現了 UIAccessibilityProtocol,你可以在同一個子可訪問性元素陣列中組合 UIAccessibilityElementUIView 的例項。請注意,如果手動分配元素,則無需實現任何動態可訪問性協議方法,但可能需要為 VoiceOver 要檢測的元素髮出螢幕更改通知。