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

我的键盘现在可以正常工作,就像苹果的默认键盘一样,它在“触摸输入”模式下具有Voice Over。当用户点击w,a,s然后按空格时,轻按空格按钮后,VoiceOver会说“是”。 Myb唯一的问题是删除键,当用户点击它时,VoiceOver会说“documnet的底部”,而不是删除的字符。我尝试了许多不同的方法来允许VoiceOver说出已删除的单词,但是没有运气。

我的删除键的accessibilityTraits设置为

button.accessibilityTraits =  UIAccessibilityTraitKeyboardKey

就像键盘上的其他键一样,但这无济于事。

我需要的是VoiceOver说出按下删除键时要删除的内容,就像Apple键盘使用VoiceOver一样。

非常感谢
哈桑

最佳答案

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

完成!!!!!轻松解决烦人的问题。

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

10-12 19:19