9

元に戻す/やり直し機能をUITextView(私はLateXエディターを構築しています)に統合しようとしていますが、運が悪く、正直言って、この議論について本当に混乱しています。これら 2 つの操作に含まれる手順がわかりません。つまり、2 つの方法が必要です。

  • 最後に挿入されたテキストを削除するもの
  • 削除されたテキストを復元するもの

疑問の 1 つは、最後に挿入されたテキストをどこで取得するかです。つまり、元に戻すために登録する必要がある場所はどこですか?

  • textViewDidChange でテキスト全体を取得できます
  • textViewShouldChangeTextInRange で、最後に挿入された文字を取得できます

私が書いたことがこれまでで最高の説明ではなかったことはわかっていますが、ここにいる誰かが過去に同じ問題に直面し、ヒントを与えてくれることを願っています. 基本的に、再開するには、元に戻す/やり直し機能をテキストビューに追加する必要があります。これらのアクションにリンクされた2つのボタンがある可能性があります。

前もって感謝します

4

1 に答える 1

23

私は今、ばかのように感じています:(解決策は本当に本当に簡単でした... textView にはすでに undoManager があるので、基本的に textView の元に戻す/やり直しアクションを実行する手順は次のとおりです: viewDidload 内:

myUndoManager = [textView undoManager];

アクションを実行する場所

[myUndoManager undo]; // or redo

私は時々本当にばかげています.私はほとんど自分の元に戻すコードを書いていました...これが誰かを助けることができることを願っています.

于 2011-02-25T07:59:30.740 に答える