NSUndoManager для добавления и удаления textVIew как подпредставления - PullRequest
0 голосов
/ 07 декабря 2011

Как я могу использовать менеджер NSUndo для добавления или удаления подпредставления, может быть, текстовое представление в контроллере представления. Я видел много примеров для текстового представления отменить и повторить. Но не могу найти, как добавить или удалить представление представления, используя nsundomanager.Кто-нибудь может мне помочь, пожалуйста ..

1 Ответ

0 голосов
/ 23 августа 2013

То, что я сделал для удаления подпредставления из представления с помощью NSUndoManager, - это сохранение «стека» подпредставлений в NSMutableArray.Когда жест встряхивания обнаружен, и undoManager вызывается для отмены, я проверяю, если [self.undoManager isUndoing], и, если это так, я вызываю метод, который удаляет последнее подпредставление из этого массива из текущего представления.

В стороне от заметки, чтобы «Повторить» действие, вы должны снова вызвать prepareWithInvocationTarget из отменяемого метода, чтобы он знал, как обрабатывать действие Повторить в случае, если пользователь хочетпеределывать.Для управления возвратом я сохраняю точку добавления подпредставления, и если пользователь хочет повторить, я добавляю его снова в том же месте.

...