VoiceOver宣布按钮变暗而不是禁用

时间:2015-03-26 16:29:04

标签: ios mobile ios8 accessibility voiceover

iOS 8.x VoiceOver为已禁用的按钮宣布调暗而不是禁用。有没有办法以编程方式让VoiceOver说'#34;禁用"而不是" dimmed"?

1 个答案:

答案 0 :(得分:6)

有办法做你想做的事,但你绝对不应该使用它们。宣布" Dimmed"当User Interaction Enabled特征设置为NO时发生。这是VoiceOver用户在屏幕上可以使用的方式,可以调整焦点但禁用的元素正在宣布。强制您的应用以其他方式运行的可访问性较差(参见WCAG 2.0指南3.2.3)。

如果您希望将其真正禁用,您可以执行的操作设置为isAccessibilityElementNO。然后它甚至不会进入VoiceOver焦点循环。然后,只需将其设置为YES,即可启用它。但是,如果你想把它留在焦点循环中," Dimmed"是暂时禁用的UI元素的适当公告。

我的投票将是第一个解决方案,因为动态修改isAccessibilityElement是动态内容的一种形式,可能需要额外的考虑因素来维护正确的可访问性(参见WCAG 2.0指南3.2.1和3.2.2) 。除非有很多这样的按钮,并且浏览它们是乏味的,在这种情况下,实现动态元素注意事项对于保持良好的VoiceOver可用性是值得的。