• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

ios - 将 ViewController 中的所有元素设置为不被 VoiceOver 读取

[复制链接]
菜鸟教程小白 发表于 2022-12-13 11:04:32 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我正在寻找一种方法来告诉 VoiceOver 不要读取整个 ViewController 的元素值(value)。原因是,我有一个按钮,当按下它时,会在屏幕上显示一个模态的 VC。我说modal-ish,因为它不是modal,而是一个自定义的VC,里面有一个自定义的动画,实际上并没有覆盖整个屏幕,所以新的VC和旧的VC同时在 View 中并保持在内存中。

当用户用两根手指滑动以读取屏幕上的所有元素时,VoiceOver 将首先读取我的新 VC 中的元素,就像它应该的那样,然后它会开始读取这个 VC 后面现在“隐藏”的元素(在引号中,因为它们没有以编程方式设置为隐藏,只是因为 VC 覆盖了它们而被隐藏)并且不应该被阅读。

有什么简单的方法可以让 VoiceOver 跳过整个旧 VC?或者我是否必须逐个元素地检查,并将 isAccessibilityElement 设置为 NO,然后在覆盖 VC 被解除时返回 YES?



Best Answer-推荐答案


如果您想跳过特定元素的配音,则必须禁用该元素的可访问性(如果它已在 Storyboard 中设置),否则您必须以编程方式进行。您必须将 IsAccessibilityElement 设置为 NO,以使语音跳过该元素。

还有另一种方法可以做到这一点。您必须创建一个数组并提供您希望通过语音读取的元素,因此当您希望将此数组提供给:accessibilityElements,这样语音 ovr 只会读取您在大批。您可以随时根据需要修改数组。

关于ios - 将 ViewController 中的所有元素设置为不被 VoiceOver 读取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32783664/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap