ios - 带自定义键盘的 VoiceOver

标签 ios swift keyboard accessibility voiceover

我有一个自定义键盘应用程序,目前正在处理语音支持更新,但删除(退格)按钮有问题。

我的键盘现在的工作方式与苹果默认键盘完全一样,在“触摸打字”模式下带有旁白。当用户点击 w、a、s,然后点击空格时,VoiceOver 会在点击空格按钮后说“was”。 Myb 唯一的问题是删除键,当用户点击它时,VoiceOver 会说“Bottom of documnet”而不是删除的字符。我尝试了很多不同的方法来让 VoiceOver 说出被删除的词,但没有成功。

我的删除键'accessibilityTraits设置为

button.accessibilityTraits =  UIAccessibilityTraitKeyboardKey  

就像键盘上的其他键一样,但这没有帮助。

我需要的是让 VoiceOver 在按下删除键时说出正在删除的内容,就像 Apple 键盘通过 VoiceOver 所做的那样。

非常感谢 哈桑

最佳答案

我找到了这个问题的解决方案。 首先,我使用了 UIAccessibilityAnnouncementNotification,它会在按下删除按钮时调用,并将删除的字符作为参数传递给它。 我们使用 textDocumentProxy.documentContextBeforeInput 找到删除的字符,这将返回一个字符串,您需要做的就是获取最后一个字符。

完成!!!!!一个烦人的问题的简单解决方案。

关于ios - 带自定义键盘的 VoiceOver,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43585145/

相关文章:

ios - 类型 MyViewController 不符合协议(protocol) 'STPPaymentContextDelegate'

ios - 找不到 'GMSAutocompleteViewControllerDelegate' 的协议(protocol)声明?

ios - 看起来像标准单元格的自定义 UITableViewCell

ios - 计数对象解析 Swift + tableView 部分

c# - 为 Windows Store App 定制的虚拟键盘

java - CentOS 屏幕键盘未显示 Java Swing 文本输入字段

keyboard - 是否有一种编程语言使用(非扩展)ascii 表中的字符以外的字符?

ios - AutoLayout UIScrollView 内容在旋转时不调整大小(包括示例项目)

ios - 如何限制 UILabel 的最大宽度?

ios - 需要物体以恒定速度移动