nsundomanager

___ tag123ios ___ iOS ist das mobile Betriebssystem, das auf dem Apple iPhone, iPod touch und iPad ausgeführt wird. Verwenden Sie dieses Tag [ios] für Fragen zur Programmierung auf der iOS-Plattform. Verwenden Sie die verwandten Tags [objective-c] und [swift] für Probleme, die für diese Programmiersprachen spezifisch sind. ___ qstnhdr ___ iOS - UITextView + NSUndoManager ___ tag123uitextview ___ Die UITextView-Klasse implementiert das Verhalten für eine bildlauffähige, mehrzeilige Textregion in iOS. Die Klasse unterstützt die Anzeige von Text mit einer benutzerdefinierten Schriftart, Farbe und Ausrichtung und unterstützt auch die Textbearbeitung. In der Regel verwenden Sie eine Textansicht, um mehrere Textzeilen anzuzeigen, z. B. wenn Sie den Textkörper eines großen Textdokuments anzeigen. ___ tag123nsundmanager ___ 'NSUndoManager' ist ein Allzweck-Recorder für Operationen zum Rückgängigmachen und Wiederherstellen. ___ tag123uitextviewdelegate ___ Ein Textansichtsdelegat reagiert auf bearbeitende Nachrichten in der Textansicht. Sie können den Delegaten verwenden, um Änderungen am Text selbst und an der aktuellen Auswahl zu verfolgen. ___ answer5114920 ___

Ich fühle mich jetzt wie ein Idiot :( Die Lösung war wirklich sehr einfach ... Die textView hat bereits einen UndoManager, also sind im Grunde die Schritte, die Aktionen für eine textView rückgängig machen / wiederholen müssen: InnenansichtDidload:

%Vor%

wo Sie die Aktionen ausführen möchten

%Vor%

Ich bin manchmal wirklich dumm, ich habe fast meinen eigenen Undo-Code geschrieben ... Ich hoffe, das kann jemandem helfen

    
___ qstntxt ___

Ich versuche, die Undo / Redo-Funktionen in einem UITextView zu integrieren (ich baue einen LateX-Editor), ohne Glück, und um ehrlich zu sein, bin ich wirklich verwirrt über dieses Argument. Ich verstehe die Schritte, die mit diesen beiden Operationen verbunden sind, nicht. Ich meine, ich brauche zwei Methoden.

  • eine, um den zuletzt eingefügten Text zu entfernen
  • eine, um den entfernten Text wiederherzustellen

Ein Zweifel ist, wo ich den zuletzt eingefügten Text bekomme? Mit anderen Worten, wo muss ich mich für das Undo registrieren?

  • in textViewDidChange kann ich den ganzen Text
  • bekommen
  • in textViewShouldChangeTextInRange Ich kann das letzte Zeichen einfügen

Ich weiß, dass das, was ich geschrieben habe, nicht die beste Erklärung war, aber ich hoffe, dass jemand hier in der Vergangenheit mit dem gleichen Problem konfrontiert wurde und mir einen Hinweis geben kann. Um fortzufahren, muss ich die Funktionen Rückgängig / Wiederholen zu einer Textansicht hinzufügen, möglicherweise mit zwei Schaltflächen, die mit diesen Aktionen verknüpft sind.

Vielen Dank im Voraus

    
___ tag123cocoatouch ___ Die Cocoa Touch-Frameworks, die iOS-Apps steuern, teilen viele bewährte Muster, die auf dem Mac gefunden wurden, wurden jedoch mit besonderem Fokus auf Touch-basierte Oberflächen und Optimierung erstellt. ___
1
Antwort

iOS - UITextView + NSUndoManager

Ich versuche, die Undo / Redo-Funktionen in einem UITextView zu integrieren (ich baue einen LateX-Editor), ohne Glück, und um ehrlich zu sein, bin ich wirklich verwirrt über dieses Argument. Ich verstehe die Schritte, die mit diesen beiden Opera...
22.02.2011, 14:38