我正在尝试使用objective-C开发一个iPhone应用程序(演示项目),它可以将多种摄影效果应用于图像。
应用程序已经启动并运行,但我想在UI中实现“撤消”和“重做”功能。我已经成功地编写了一个级别的撤销-重做,即轻松地后退或前进一步。但是,当合并多个级别的撤消和重做操作时,这个概念会变得复杂。当用户撤消一系列步骤,然后转移到做其他事情时,它变得特别模糊。我试图保存的状态越多,我就越容易上当受骗。
我想知道是否有实现此类操作的标准最佳实践。有没有我应该使用的架构或框架?执行此操作的一般可接受程序是什么?任何关于简化此方法的一般建议都将不胜感激。
请帮帮忙。
发布于 2013-02-22 13:37:48
这完全取决于你如何处理你的图像。
如果您正在玩图像,您可以使用NSUndoManager,您可以在其中跟踪图像处理。
否则,您可以跟踪在您的映像上执行的操作数组,这是不太可取的。
但这一切都取决于你的要求和你如何处理你的图像,
需要注意的重要事情是你在这类动作中的记忆力。
如果你想在下次加载你的应用时重用你的动作,你可以使用NSKeyArchiever。
https://stackoverflow.com/questions/15017353
复制相似问题