如何从iOS的自定义键盘将键值推入UITextView

我正在为UITextView构build一个虚拟键盘。 一切正常,我可以显示键盘和删除键盘以及显示击键。 我正在使用“stringByReplacingCharactersInRange:withString”方法将新的击键放入文本视图。 这个工作,但由于它每次都replacestring,入口点到string的末尾。 这一切都有道理,但不是很有用。 我可以通过在代码中执行检查来解决这个问题,但是可能会有更好的方法。

所以我的问题是这样的。 有没有办法将新的键直接推到UITextView而不需要手动修改UITextView的文本属性的string? 该手册指出,我将不得不自己pipe理目标/行动,但是我想知道我是否错过了要打电话的行动。 看起来,苹果默认键盘必须有一个光滑的拳击方式冲入对象没有明显数量的检查,我将不得不做的打字顺利。

任何帮助将不胜感激。 谢谢,罗布

那么,我没有得到任何答复。 所以我想出了一个方法来做到这一点,所以它是合理和简单的。 这是跟踪选定范围的问题。 所以当我希望退格时,我使用这种技术。

NSRange currentRange = self.myTextView.selectedRange; if (currentRange.length == 0) { currentRange.location--; currentRange.length++; } self.myTextView.text = [self.myTextView.text stringByReplacingCharactersInRange:currentRange withString:[NSString string]]; currentRange.length = 0; self.myTextView.selectedRange = currentRange; 

如果我需要键入一个字符这个工程。

 NSRange currentRange = self.myTextView.selectedRange; self.myTextView.text = [self.myTextView.text stringByReplacingCharactersInRange:currentRange withString:someCharacter]; currentRange.location++; currentRange.length = 0; self.myTextView.selectedRange = currentRange; 

如果有人有更好的办法,我想听听。

谢谢,