3

我正在使用 CoreGraphics 实现自由手绘,这对我来说效果很好,现在我想为此绘图实现 Undo 功能,以便用户可以清除他的最后一笔

4

3 回答 3

5

在你的方法中:

-(void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {

    if(imageView2.image != nil){
        [pathArray addObject:imageView2.image];
    }

}

在撤消按钮上:

if([pathArray count]>0)
{
    [pathArray removeLastObject];
    if([pathArray count]==0)
    {
        imageView2.image = GlobalImage2;
    }
    else
    {
        imageView2.image=[pathArray objectAtIndex:[pathArray count]-1];
    }

}

从数组中检索此图像。我在我的几个应用程序中使用了相同的代码。我希望它对你有用。

谢谢,

鹤芒。

于 2013-01-16T12:20:22.777 回答
1

你应该阅读备忘录模式。一些链接:

及时,抱歉没有在这里解释。但是有很多关于它的书籍和文章。

于 2013-01-16T12:18:33.840 回答
0

我从来没有用过这个,但你可以在这里找到撤消或清除最后的事情

http://www.cocoacontrols.com/controls/acedrawingview?utm_source=Cocoa+Controls&utm_campaign=eaef7635b9-Cocoa_Controls_Weekly_Roundup_2013_01_1%27&utm_medium=email

于 2013-01-16T12:17:38.283 回答