我可以影响VoiceOver转子中出现的内容吗?

我有一个基于文本的应用程序,我希望我的用户在启用VoiceOver时使用“线”转子选项。 但是,该选项不会出现。 在我的应用程序中的文本是使用tableview中的单元格(单元格包含UILabels和其他视图)布局。

恐怕我的执行会影响转子如何“看”我的应用程序,但我认为这是不幸的,如果它限制我完全支持转子。

有什么方法可以利用转子中的“线路”选项?

我想你正在寻找UIAccessibilityReadingContent协议。

UIAccessibilityReadingContent协议可以在表示要由用户(例如书或文章)读取的内容的对象上实现。

有四种方法可以实现:

  • accessibilityLineNumberForPoint:
  • accessibilityContentForLineNumber:
  • accessibilityFrameForLineNumber:
  • accessibilityPageContent

你将不得不弄清楚如何将文本切成行,每行的框架和某一点所属的行(打击testing),但由于您使用表视图,您应该能够钩入细胞找出那些东西。