我有一个自定义键盘应用程序,目前我正在进行语音支持更新,但我遇到删除(退格)按钮的问题 .
我的键盘现在的工作方式与苹果默认键盘的工作方式类似于“触摸键入”模式中的语音功能 . 当用户点击w,a,s然后空格时,VoiceOver会在点击空格按钮后说“是” . Myb唯一的问题是删除键,当用户点击它时,VoiceOver说“底部的documnet”而不是删除的字符 . 我尝试了很多不同的方法让VoiceOver说出删除的单词,但没有运气 .
我的删除键'accessibilityTraits设置为
button.accessibilityTraits = UIAccessibilityTraitKeyboardKey
就像键盘上的其他键一样,但这没有用 .
我需要的是VoiceOver说出当按下删除键时被删除的内容就像Apple键盘与VoiceOver一样 .
非常感谢哈桑
1 回答
我能够找到解决这个问题的方法 . 首先,我使用了
UIAccessibilityAnnouncementNotification
,它将在按下删除按钮时调用,并将删除的字符作为参数传递给它 . 我们通过使用textDocumentProxy.documentContextBeforeInput
找到删除的字符,这将返回一个字符串,您需要做的就是获取最后一个字符 .完成!!!!!轻松解决烦人问题 .