你如何实现UIAccessibility协议?

时间:2017-06-06 16:06:05

标签: ios swift uikit swift-protocols uiaccessibility

“适用于iOS的辅助功能编程指南”声明:

  

另一种方法是在自定义子类的实现中实现UIAccessibility协议的isAccessibilityElement方法。以下代码段显示了如何执行此操作:

但是当我这样做时,如下面的代码所示:

class UITextLayerLabel : UIView, UIAccessibility {

XCode将此错误返回给我:

 [...] Use of undeclared type 'UIAccessibility'

我缺少什么?具体进口?该协议是否仍适用于iOS 10 / XCode8?

1 个答案:

答案 0 :(得分:3)

正如here所指出的那样,UIAccessibility是一种非正式的协议。有关非正式协议与正式协议之间的区别,请参阅here

基本上,没有名为UIAccessibility的类型。实际上,UIView已经符合UIAccessibility。要使自定义视图可访问,只需覆盖以accessibility开头的属性和方法。

那么你什么时候需要实施UIAccessibility?如上所述here

  

您可以使用UIAccessibilityElement提供有关的信息   图标或文本图像不会自动访问,因为它没有   继承自UIView(或UIControl)。 包含此类内容的视图   nonview项创建一个UIAccessibilityElement实例   表示需要访问的每个项目。