使用UITextField自定义键盘扩展

我有自定义键盘扩展,其中包含UITextField。 我可以切换到UITextField的文本输入,但无法切换回self.textDocumentProxy 。 有谁知道,如何做[self.textDocumentProxy becomeFirstResponder]这样的事情?

(顺便说一句,它看起来像“GIF键盘”应用程序提供这样的可能性)

我为此实现了下一个解决方法:

  1. 我的textFiedinheritance自UITextField 。 禁用UserInteraction以防止它成为becomeFirstResponder (因为您无法切换回系统输入)。 我添加了闪烁的UIView作为光标模仿( 闪烁动画 )。 通过计算当前字符串的长度,在覆盖的setText:方法中更改此游标origin.x (对此使用boundingRectWithSize:方法)。

  2. 当用户键入的内容我正在检查textField是否处于活动状态(显示),然后相应地向textField (使用setText: insertText:self.textDocumentProxy insertText: / deleteBackward方法添加/删除符号。