如何在NSDocument
保存、第一次和后续时间时收到通知?
我首先认为覆盖writeToURL:ofType:error:
会做到这一点,但似乎在第一次保存文档之前也调用此方法进行临时自动保存,并且可能在复制/复制操作时调用。
另一方面,setFileURL:
似乎在第一次保存文档时被调用,但在随后的时间里却没有。
是否有某种保存通知?还是我必须解决上述方法的各种边界情况?
如何在NSDocument
保存、第一次和后续时间时收到通知?
我首先认为覆盖writeToURL:ofType:error:
会做到这一点,但似乎在第一次保存文档之前也调用此方法进行临时自动保存,并且可能在复制/复制操作时调用。
另一方面,setFileURL:
似乎在第一次保存文档时被调用,但在随后的时间里却没有。
是否有某种保存通知?还是我必须解决上述方法的各种边界情况?
NSDocument
具有writeSafelyToURL::::,除了目标位置 URL 之外,它还获取传入的 NSSaveOperationType。
这将允许您过滤掉自动保存操作。
覆盖时不要忘记调用超级实现writeSafelyToURL
。