iOS: VoiceOver 在错误的地方点击
iOS: VoiceOver click-through in wrong place
我正在编写一个使用 touchesBegan/Moved/etc
跟踪手势并将其绘制在屏幕上的应用程序。启用 VoiceOver 后,当我在绘图区域上双击时,无论实际点击的位置如何,第一次触摸总是在视图的中心(到达 touchesBegan
)。想法?
我已将视图的辅助功能属性设置为
self.isAccessibilityElement = true // Default is false.
self.accessibilityElementsHidden = false // Default is false anyway.
这是因为 VoiceOver 会捕获手势,并将其转化为更基本的事件。这使残障用户可以更轻松地与应用程序交互。虽然这会完全破坏您的应用程序的可访问性,但我并不一定推荐它。你要找的是UIAccessibilityTraitAllowsDirectInteraction
。同样,这将在几乎所有情况下完全破坏可访问性。但是,在绘图应用程序中,这可能只是有意义的,并且有助于部分站点用户的可访问性。
您应该向视力不佳的用户说明,该应用是绘图 space,需要在屏幕的其他区域执行正常的 VoiceOver 手势。此外,请确保您的视图不会占用太多屏幕,以免妨碍 VoiceOver 的标准使用。
我正在编写一个使用 touchesBegan/Moved/etc
跟踪手势并将其绘制在屏幕上的应用程序。启用 VoiceOver 后,当我在绘图区域上双击时,无论实际点击的位置如何,第一次触摸总是在视图的中心(到达 touchesBegan
)。想法?
我已将视图的辅助功能属性设置为
self.isAccessibilityElement = true // Default is false.
self.accessibilityElementsHidden = false // Default is false anyway.
这是因为 VoiceOver 会捕获手势,并将其转化为更基本的事件。这使残障用户可以更轻松地与应用程序交互。虽然这会完全破坏您的应用程序的可访问性,但我并不一定推荐它。你要找的是UIAccessibilityTraitAllowsDirectInteraction
。同样,这将在几乎所有情况下完全破坏可访问性。但是,在绘图应用程序中,这可能只是有意义的,并且有助于部分站点用户的可访问性。
您应该向视力不佳的用户说明,该应用是绘图 space,需要在屏幕的其他区域执行正常的 VoiceOver 手势。此外,请确保您的视图不会占用太多屏幕,以免妨碍 VoiceOver 的标准使用。