在视图及其子视图上启用 VoiceOver

Enable VoiceOver on the view and it subviews

背景:类似于 Apple Phone 应用程序中的语音邮件视图。我希望能够从单元格上下文以及各个控件中获得画外音通知。

问题: 好像是父视图打开了辅助功能,子视图就变成不可访问了。

我调查了 shouldGroupAccessibilityChildrenaccessibilityViewIsModal,但他们似乎没有解决问题。我认为 UIAccessibilityNavigationStyle 可能是答案,但不确定如何使用它。


澄清:这与可视语音信箱无关。下面显示了 Apple 原生应用程序的图片,画外音打开。黑框是语音目标所在的位置。绿色框只是遮挡了一些私人信息。

当select整体框

当select播放按钮

您应该研究 UIAccessibilityContainer 协议的子类化。我相信这就是你想要的。创建一个自定义辅助功能容器,它是所有你想要的东西的父级。然后,您可以更精细地控制超级视图及其子视图如何向可访问性 API 报告。