撤消绘画应用程序中的操作

时间:2014-02-26 04:49:30

标签: ios undo

我正在使用此链接(http://www.raywenderlich.com/18840/how-to-make-a-simple-drawing-app-with-uikit)来制作绘画应用程序,我也想执行撤消操作。

我使用此代码将用户创建的每个草图保存在一个可变的`array [completeLines]中。这些更改是在touchesEnded方法中完成的。

UIGraphicsBeginImageContextWithOptions(_tempDrawImage.bounds.size, NO,0.0);
[_tempDrawImage.image drawInRect:CGRectMake(0, 0, _tempDrawImage.frame.size.width, _tempDrawImage.frame.size.height)];
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
[completeLines addObject:image];

现在我无法从主图像中删除存储在可变数组中的这些图像。

1 个答案:

答案 0 :(得分:0)

所以,你可能已经到了一半了。 如果您保留了每个图像的数组,那么您只需要删除最后一个图像,清除主图像(绘制所有白色或其他图像),如果您的图像阵列不是不透明的,并将之前的图像绘制到主图像

你可以更漂亮,并将重做的图像作为重做选项暂时保留,直到完成新的绘图。只需保留一堆Redos,如果新绘图完成,请清除重做堆栈。