【发布时间】:2019-10-25 02:55:25
【问题描述】:
您可能知道,iOS VoiceOver 模式提供了两种方式来浏览屏幕上的元素。一种是直接在界面元素的框架内触摸,另一种是按出现顺序逐个遍历元素,通过在屏幕上的任意位置向左或向右滑动。
现在我们的应用程序有一个UITableView,每个单元格中都有一个按钮,很少使用,但在功能上仍然很重要。
为了更快地浏览表格视图,我们的用户要求我们在应用中配置 VoiceOver 模式,以便在使用滑动导航时跳过阅读此按钮的标题仅。不能在此处使用accessibilityElementsHidden,因为在实际需要时,用户必须直接触摸该按钮才能发现该按钮。但是在通过滑动导航时,屏幕阅读器应该忽略它。 (accessibilityElementsHidden 在两种导航模式下都禁用它,使 VoiceOver 用户完全无法访问该按钮)
我们筛选了UIAccessibilityTraits,但无济于事。你知道实现这种行为的方法吗?
【问题讨论】:
-
不要吹毛求疵,但
"VoiceOver mode provides two ways to navigate through elements"并不完全准确。除了您提到的两种导航方式之外,还有更多的导航方式。转子提供了更多 - 垂直导航、按钮导航、表格行导航等。您的用户想要忽略其中的多少?我认为假设每个 VO 用户都以相同的方式导航并且您不应该尝试基于手势导航隐藏元素是一个坏主意。 @david 的想法是更好的选择。 -
@slugolicious 是的,这毕竟是我们决定实施的。这种方法应该在可访问性功能的其他方面发挥得更好。感谢您的意见!
标签: ios cocoa-touch voiceover uiaccessibility