我有一个UIViewController,在分割器类型的接口中包含两个UIView。在第一个视图中,我有许多UIButton,它们通常被定位成使得按钮从视图的边缘延伸,因此不完全可见。在这种情况下,VoiceOver光标的问题在于光标环绕按钮的整个范围,因此光标延伸到视图的右侧。
在一个可访问性的培训课程中,我被告知你可以以某种方式覆盖按钮边缘的默认光标,让它包围你喜欢的任何矩形,但我找不到如何做到这一点。
答案 0 :(得分:1)
听起来您想在每个按钮上设置自定义accessibilityFrame。如果使用CGRectIntersection()将屏幕矩形与每个按钮的框架相交,则可以获取屏幕上每个按钮框架的一部分。
答案 1 :(得分:0)
您可以使用accessibilityFrame
...或accessibilityPath
adapt the focus area(如果希望使用Bezier路径)来访问每个想要的元素。在第一种情况下,union
方法可能对构造最终矩形非常有用。
最后,别忘了指定accessibilityActivationPoint
,以免使用Dynamic Type
的不同大小带来不愉快的惊喜。