有没有办法查看撤消堆栈?

nev*_*ing 3 macos cocoa undo objective-c

我正在学习撤消,我想要一种方法来查看撤消对象NSInvocation,undoManager以便我可以看到正在发生的事情.我在文档中看不到这样的东西,但也许有人知道一种方式.

谢谢.

nsc*_*idt 5

您可以使用

class-dump -C NSUndo /System/Library/Frameworks/Foundation.framework/Foundation
Run Code Online (Sandbox Code Playgroud)

了解撤消相关类的内部结构.您会发现NSUndoManager有两个名为_undoStack和_redoStack的实例变量.它的结构非常明显,所以你可以编写一个打印堆栈的方法.我发现调试撤消相关问题非常方便.

  • 谢谢你的回答.对于那些想知道什么是类转储的人(比如我),我在这里找到了它:http://www.codethecode.com/projects/class-dump/ (3认同)