我試圖從VoiceOver隱藏我的應用程序中的幾個元素,這樣他們就不會被屏幕閱讀器朗讀。在iOS上,我將isAccessibilityElement
設置爲NO
,但這對OSX沒有影響。有關從VoiceOver隱藏元素的正確方法是什麼?禁用/隱藏輔助功能元素
例如,我在視圖中包含一系列標籤,如果它們由VoiceOver單獨說出,那麼這些標籤是沒有意義的。我想在容器視圖上設置accessibilityLabel
來描述嵌套在其中的所有標籤。但是如果我這樣做,裏面的標籤仍然會被VoiceOver讀出。
實際上,[元素setAccessibilityRole:@「」]中的MacOS 10.12工作如本說明回答。但是,這種行爲是無證的。在NSAccessibilityConstants.h中列出了幾十個受支持的常量:NSAccessibilityUnknownRole,NSAccessibilityButtonRole,...。但他們中沒有一個表示「不可訪問」或「沒有角色」,並且沒有一個是空字符串。結論:這種行爲可能會在未來的macOS版本中發生變化。 –