我有一个应用程序,该应用程序允许用户向上下和向下移动Uiviews,从而使外观可以在另一个视图上。通过使用 cressangeSubViewAtIndex method更改Uiview的"更改UIVIEW"的"级别"(在父级中的索引(在父母的子视图中)非常简单。。
/---------/
IDX 1 / A /
/---------/
/---------/
IDX 0 / B /
/---------/
Move 'A' Down
/---------/
IDX 1 / B /
/---------/
/---------/
IDX 0 / A /
/---------/
现在,我正在使用nsundomanager记录更改,以便用户可以撤消移动动作。这很好。当试图在Nsundomanager上执行重做消息时,问题出现了。由于" zindex"没有状态(因为它是父母的观点中的一个位置)在被移动的uiview上,所以重做什么都没做。...
有没有办法明确地通过重做重做的重做?
好吧,我的问题是对撤消经理的重做部分的误解。事实证明,撤消经理的重做是另一个撤消,它只是知道它在撤消过程中,并将调用添加到重做堆栈中。
这篇文章是我的关键:nsundomanager:重做不起作用