首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >iOS - UITextView + NSUndoManager

iOS - UITextView + NSUndoManager
EN

Stack Overflow用户
提问于 2011-02-22 14:38:20
回答 1查看 3.1K关注 0票数 9

我试图在UITextView中集成undo/redo特性(我正在构建一个LateX编辑器),但没有运气。老实说,我真的对这个论点感到困惑。我不明白这两个操作所涉及的步骤,我的意思是我需要两种方法

  • 1删除最后插入的文本
  • one以恢复已删除的文本

一个疑问是我从哪里得到最后一个插入的文本?换句话说,在哪里我必须注册撤销?

  • in textViewDidChange我可以得到整个文本
  • in textViewShouldChangeTextInRange我可以得到最后插入的字符

我知道我写的不是最好的解释,但我希望这里的人在过去曾遇到过同样的问题,并能给我一个提示。基本上,要继续,我必须将撤销/重做功能添加到文本视图中,可能有两个按钮与这些操作链接。

提前感谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-02-25 07:59:30

我现在觉得自己像个白痴:(解决办法真的很容易.textView已经有了一个undoManager,因此对于textView的撤销/重做操作的基本步骤是: inside viewDidload:

代码语言:javascript
复制
myUndoManager = [textView undoManager];

您想要执行的操作

代码语言:javascript
复制
[myUndoManager undo]; // or redo

有时候我真的很傻,我几乎在写我自己的撤销代码.我希望这能帮上忙

票数 24
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5079490

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档