2012-04-27 3 views
1

핵심 데이터가없는 앱을 작성했습니다. 이제 코어 데이터없이 실행 취소 및 다시 실행을 구현하는 방법을 포함하고자합니다.
는 불행하게도 나는 인터넷에서 아무 것도, 책 등 내가 스택의 funktion가 있어야이있는 NSMutableArray이 생각
제스처 처리를 실행 취소하고 다시 실행하는 방법

하는 결과가 없습니다.
그래서 나는 그것들을 undoStack과 redoStack이라고 부른다. 제스처와 같은 동작을 수행하는 경우이 작업은 배열에서 유지되어야합니다.

[undoStack addObject : gestureRecognizer]; 내가 버튼 실행 취소를 클릭하면

은, 다음 명령문은 수행해야합니다

[undoStack removeObject : [undoStack lastObject]]; 및

[redoStack addObject : [undoStack lastObject]];

끝에

나는 스택 잘하고 좋은 자동

을 지우는 저장 버튼을 가지고 있지만, 어떻게 한 배열의 모든 행동을 절약 할 수 있습니다? 같은
작업 : panGesture는 pinchGesture 및 rotationGesture

답변

1

다음, NSMutableArray (panGesture, pinchGesture, rotationGesture)에 모든 작업을 추가 undoStack 배열에 해당 배열을 추가 사전에 감사합니다. 그리고 하나의 물건처럼 그것으로 작업하십시오. 당신이 그것을 사용해야 할 때만 당신은 그것을 추출해야합니다. 또는 예를 들어 4 gestures이있는 경우 모든 제스처를 undoStack에 추가하고 redoStack으로 이동해야하는 경우 마지막 개체 4 개를 가져와 redoStack에 추가하십시오.

+0

정말 고맙습니다. 답장을 보내면 다시 한 번 댓글을 달아 드리겠습니다 :)하지만 이제 +1을 얻습니다. – Studie