gpt4 book ai didi

ios - 画外音 : is 'accessibilityActivationPoint' really useful?

转载 作者:行者123 更新时间:2023-12-01 18:37:01 27 4
gpt4 key购买 nike

我尝试并理解 accessibilityActivationPoint 的目的可能是什么?但徒劳无功。
当一个有焦点的可访问元素被激活时,该属性应该指示 VoiceOver 当用户双击该元素时它将激活的特定区域( Apple reference ):对我来说,它始终是选定的元素本身。

我知道所选元素被 VoiceOver 视为一个 block ,无论里面的其他元素是什么。一旦双击激活此 block ,VoiceOver 就会调用 accessibilityActivate知道要执行什么 (Apple reference)。

1/。我通过创建包含开关控件的自定义 View 编写了许多测试。无论 accessibilityActivationPoint 的值是多少在内部(或在另一个开关控件上的外部),开关控件的值永远不会改变。这是一个正确的用例还是我完全错了?

2/。当我们在一个可访问元素中收集许多元素时,VoiceOver 如何能够激活其中一个,而根据定义它们是不可访问的?感谢 accessibilityActivationPoint 指点其中之一应该管用 ?

就个人而言,我无法让它发挥作用,并认为我真的很困惑 accessibilityActivationPointaccessibilityActivate .

任何帮助将不胜感激,在此先感谢。

最佳答案

是的,您对 accessibilityActivate 的想法是正确的和 accessibilityActivationPoint .请注意,为了使其正常工作,accessibilityActivationPoint必须是您尝试在屏幕坐标中激活的控件中的一个点(使用 convert 函数!)。

我认为回答您的第二个问题的简短答案是"is",但是,为了消除对辅助功能激活点何时有用的困惑,我将详细介绍它。

默认情况下(也称为 AcessibilityActivate() 的默认行为),当 VoiceOver 激活任何 View 时,VoiceOver 将向 View 中心发送一个“点击手势”。这个“点击手势”的位置可以通过更新accessibilityActivationPoint来改变。 View 上的属性。下面,我有一个如何使用此属性的示例。

假设您在一些文本旁边有一个空白按钮(在下图中,该按钮是灰色框):

Screenshot of text next to a button without text on it.

出于可访问性的目的,您可能希望将包含按钮和文本的整个 View 设为 Accessibility Element(以便 VoiceOver 用户可以轻松理解按钮与文本“Worldspace Attest”相关联)。在下图中,我使用 Accessibility Inspector 来显示包含这两个元素的 View 是一个 Accessibility Element。

Image showing that the view holding the text and button is VoiceOver focusable.

请注意,在这些图像中,按钮不在 View 的中心,而是在右侧。当您使用 VoiceOver 激活此 View 时,该 View 不会选择按钮;相反,它会向 View 的中心发送一个“点击”(这与点击文本相同,但不会执行任何操作)。为了选择按钮,您必须设置 View 的 accessibilityActivationPoint成为按钮的屏幕坐标:
view.accessibilityActivationPoint = self.convert(button.center, to: UIApplication.shared.windows.first)

这应该使 VoiceOver 用户可以使用此按钮。

我希望此信息能消除有关 Accessibility Activation Point 属性的任何困惑。我上面使用的例子可以在 this repository 中找到。在“事件控件名称”演示中。

关于ios - 画外音 : is 'accessibilityActivationPoint' really useful?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52480541/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com