NSUndoManager将在同一个runloop中发生的调用组合在一起。
我想加载一个包含其中的撤消历史记录的文档。
因此,我创建了一个文档并逐个应用调用,但这些都会非常快速地添加,从而导致单个撤消。
有没有办法可以更改NSUndoManagers runloop或其他东西,以便我获得单独的撤销调用?
我尝试过禁用groupsByEvent并创建自己的beginUndoGrouping但它似乎无法正常工作
答案 0 :(得分:0)
您是否尝试关闭顶级组并在添加调用后再次打开它? E.g:
undoManager.endUndoGrouping()
// add your undo invocations
undoManager.beginUndoGrouping()