如何添加到iOS VoiceOver转子以获得自定义视图?

时间:2013-03-11 20:20:46

标签: ios objective-c accessibility voiceover

最近,我一直致力于通过VoiceOver使我的应用程序运行良好。一般来说它简单明了,但是我想要模拟系统应用程序中的一些行为,而且我很难找到用于设置的API。

特别是,我有兴趣为VoiceOver“转子”添加几个选项,并在用户增加和减少值时对它们做出响应。然而,尽管像Apple的地图应用程序这样的应用程序会向转子添加项目并能够响应,但我无法弄清楚如何为我的应用程序执行此操作。

有没有人成功这样做过?如果是这样,怎么样?

2 个答案:

答案 0 :(得分:3)

更新:iOS 10最终添加了向VoiceOver添加自定义转子项的功能(与“Actions”转子项目不同) - 只需将UIAccessibilityCustomRotor个对象添加到{ {1}}适当的容器视图。

OLD ANSWER

目前没有API可以添加您自己的转子项目。您只能实现一些现有转子项目的工作方式:

  1. “调整价值” - 在这里您应该为accessibilityTraits返回UIAccessibilityTraitAdjustable特征,然后实施accessibilityIncrement / accessibilityDecrement方法
  2. “标题” - 您将某些视图标记为UIAccessibilityTraitHeader,然后这些视图应该是当用户旋转到“标题”并向上/向下轻拂时用户移动的视图
  3. OLD UPDATE:“操作” - 请参阅UIAccessibilityCustomAction
  4. 如果您需要向转子添加自定义项目,我猜您应该提交雷达。

答案 1 :(得分:3)

使用iOS 8,您可以使用-accessibilityCustomActions方法返回UIAccessibilityCustomAction个对象的数组,表示您想要呈现“转子式”的动作。