我开发了IOS 8自定义键盘。我想给它"撤消"和"重做"功能,如默认系统键盘。我以不同的方式尝试过,但无法找到一个好的解决方案。
我们可以使用方法
与文本输入对象textDocumentProxy
进行交互
insertText
deleteBackward
documentContextAfterInput
ocumentContextBeforeInput
但我无法找到任何实施方式"撤消"和"重做"功能。
答案 0 :(得分:2)
我认为我们可以不实现这些功能(撤消,重做)
因为自定义键盘只能在其主视图中绘制 UIInputViewController对象,它不能选择文本。文字选择是 在使用键盘的应用程序的控制下。 如果该应用 提供编辑菜单界面(例如剪切,复制和粘贴), 键盘无法访问。自定义键盘无法提供 插入点附近的内联自动校正控件。
我认为很多情况下,文本字段的内容发生了变化,您无法知道它何时发生变化,变化如何。如果我们无法知道,我们也无法知道撤消到哪里。我想是的。
我正在开发像你这样的自定义键盘扩展,我有很多问题。 (例如:我们如何知道当前光标以获取当前文本选择...)
我的问题:Current text selection in CustomKeyBoardExtension(希望有人知道)