gpt4 book ai didi

iOS 辅助功能 - 有没有办法判断 VoiceOver 何时改变了焦点?

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:00:28 25 4
gpt4 key购买 nike

我想在 VoiceOver 处于事件状态时每次聚焦不同的元素时调用一个方法。我希望为此有一些 UIAccessibilityNotification,但我似乎找不到。

最终,我的目标是在阅读可访问性标签之前添加一个附加条件。例如,与说(默认情况下)“如果 UIButton 成为焦点:阅读标签”相反,我希望能够说“当 UIButton 成为焦点并且UIButton 的背景色为蓝色:读取标签。

所以我的问题是:如何在阅读标签之前添加附加条件,或者在新元素成为焦点时收到通知?

最佳答案

您无法明确判断用户何时移动了 VoiceOver 光标(就像您无法判断有视力的用户正在看哪里一样)。

对于您想要的行为,您有两种选择:

  1. 每当其他条件发生变化时,将按钮的 accessibilityLabel 设置为适当的值。
  2. 子类 UIButton 并覆盖其 accessibilityLabel getter 方法:

    - (NSString *) accessibilityLabel {
    if (SOME_CONDITION) {
    return @"Hooray!";
    } else {
    return @"Womp womp";
    }
    }

如果您需要完全禁用某个项目,而不是返回 nil 或空字符串,您应该将其 accessibilityElementsHidden 属性设置为 YES .

关于iOS 辅助功能 - 有没有办法判断 VoiceOver 何时改变了焦点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29762613/

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