4

我开发了一个 IOS 8 自定义键盘。我想给它“撤消”和“重做”功能,比如默认的系统键盘。我以不同的方式尝试过,但无法找到一个好的解决方案。

textDocumentProxy我们可以使用方法与文本输入对象交互

insertText
deleteBackward
documentContextAfterInput
ocumentContextBeforeInput

但是我找不到任何实现“撤消”和“重做”功能的方法。

4

1 回答 1

2

我认为我们不能实现这些功能(撤消,重做)

根据https://developer.apple.com/library/ios/documentation/General/Conceptual/ExtensibilityPG/Keyboard.html

因为自定义键盘只能在其 UIInputViewController 对象的主视图中绘制,所以它不能选择文本。文本选择由使用键盘的应用程序控制。如果该应用程序提供了编辑菜单界面(例如用于剪切、复制和粘贴),则键盘无法访问它。自定义键盘无法在插入点附近提供内联自动更正控件。

我认为在很多情况下文本字段的内容发生了变化,你不知道它什么时候发生了变化,它是如何变化的。如果我们不知道,我们也不知道撤消到哪里。我认同。

我正在开发像你一样的自定义键盘扩展,我有很多问题。(例如:我们如何知道当前光标以获取当前文本选择...)

我的问题:CustomKeyBoardExtension 中的当前文本选择(希望有人知道)

于 2014-09-25T09:05:55.097 回答