我试图从VoiceOver隐藏我的应用程序中的几个元素,这样他们就不会被屏幕阅读器朗读。在iOS上,我将isAccessibilityElement
设置为NO
,但这对OSX没有影响。有关从VoiceOver隐藏元素的正确方法是什么?禁用/隐藏辅助功能元素
例如,我在视图中包含一系列标签,如果它们由VoiceOver单独说出,那么这些标签是没有意义的。我想在容器视图上设置accessibilityLabel
来描述嵌套在其中的所有标签。但是如果我这样做,里面的标签仍然会被VoiceOver读出。
实际上,[元素setAccessibilityRole:@“”]中的MacOS 10.12工作如本说明回答。但是,这种行为是无证的。在NSAccessibilityConstants.h中列出了几十个受支持的常量:NSAccessibilityUnknownRole,NSAccessibilityButtonRole,...。但他们中没有一个表示“不可访问”或“没有角色”,并且没有一个是空字符串。结论:这种行为可能会在未来的macOS版本中发生变化。 –