我正在使用 Objective C 构建一个 iPhone 应用程序。在我的应用程序中,我在图像上绘制笔画并希望实现撤消和重做功能。
我已经用过NSUndoManager
这个了。有了这个,我可以在下一级撤消我的绘图,但我的要求是在尽可能低的级别撤消绘图(或至少降低 10 级)。我已经将其设置setLevelsOfUndo
为 10,但它不起作用。
我正在使用以下代码:
- (void)UnDoImage1:(UIImage*)image
{
if (capturedImage.image != image)
{
[self.managedObjectContext.undoManager undo];
[[self.managedObjectContext.undoManager prepareWithInvocationTarget:self] UnDoImage1:capturedImage.image];
[capturedImage release];
capturedImage.image = [image retain];
}
}
请让我知道我在哪里不正确。我已经用谷歌搜索了很长时间,但没有找到功能失败的确切原因。