首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用UIAccessibility读取HTML选择

使用UIAccessibility读取HTML选择
EN

Stack Overflow用户
提问于 2016-11-12 02:58:05
回答 1查看 612关注 0票数 1

我最初的尝试是将html展平为文本,然后使用AVSpeechSynthesizer()读取由文本实例化的AVSpeechUtterance

代码语言:javascript
复制
let synth = AVSpeechSynthesizer()
let utterance = AVSpeechUtterance(string: myFlattenedText)
if synth.isSpeaking {
    synth.stopSpeaking(at: .immediate)
}
synth.speak(utterance)  

这通常是可行的,但VoiceOver提供的体验更好。例如,我的超文本标记语言具有支持可访问性的MathJax。VoiceOver在读取上下文数学公式方面做得很好,而将html扁平为文本的策略则不是这样。

我尝试用html片段创建一个NSAttributedString,作为详细的here,但效果并不好。

有没有一种方法可以利用VoiceOver的功能,也许是使用UIAccessibility,以与VoiceOver相同的方式读取启用了可访问性的HTML?

EN

回答 1

Stack Overflow用户

发布于 2016-11-17 21:16:18

您看到的是WebKit的MathJax支持和经过深思熟虑的UIAccessibility支持。虽然我找到的最新文档表明,作为一名iOS开发人员,these properties are not accessible to web developers应该能够遍历UIAccessibility元素层次结构以转储MathJax内容的accessibilityLabelaccessibilityValue

编辑:正如@mattsven指出的那样,问题在于WKWebView内容是在远程进程中呈现的,因此不会将其可访问性元素公开给包含它的应用程序。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40554466

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档