iOS – UITextView + NSUndoManager
我试图在UITextView(我正在构建一个LateX编辑器)中集成undo / redofunction而没有运气,说实话我真的对这个论点感到困惑。 我不明白这两个操作涉及的步骤,我的意思是我需要两种方法
- 一个删除最后插入的文本
- 一个恢复删除的文本
一个疑问是我在哪里获得最后插入的文本? 换句话说,我必须注册撤消?
- 在textViewDidChange我可以得到整个文本
- 在textViewShouldChangeTextInRange中我可以插入最后一个char
我知道我所写的并不是最好的解释,但我希望这里有人在过去遇到过同样的问题,可以给我一个提示。 基本上,为了恢复,我必须将撤消/重做function添加到textview,可能有两个与这些操作链接的按钮。
提前致谢
我现在感觉自己像个白痴:(解决方案非常简单…… textView已经有了一个undoManager,所以基本上对textView进行撤消/重做操作的步骤是:在viewDidload中:
myUndoManager = [textView undoManager];
您要执行操作的位置
[myUndoManager undo]; // or redo
我有时候真的很蠢,我差点写自己的撤销代码……我希望这可以帮助别人
- iOS的JavaScript工人高端CPU后终止()
- UITextField属性Placeholder不起作用
- :无法识别的select器发送到实例…]
- 将UIPercentDrivenInteractiveTransition的效果限制在最上面的视图
- 了解AVCaptureDeviceFormat是否适合video录制
- xcode正在创build通用的xcode存档,而不是iOS应用程序存档
- Alamofire Multipart与参数:从UIImagePickerController Swift上传图像
- IOS如何能UISaveVideoAtPathToSavedPhotosAlbum返回保存的videopath?
- iOS:使用证书和签名validation文件 – 公钥错误,validation失败