你怎么知道NSDocument
是否是新的?
我目前正在使用fileURL != nil
,但我在文档中找不到任何确认此内容的地方。
此外,fileURL
会在已恢复的文档中返回nil
(退出应用后不保存,然后再次打开应用)。是否可以区分新文档和恢复的文档?
答案 0 :(得分:0)
通过反复试验:
- (BOOL) readFromURL:(NSURL *)url ofType:(NSString *)typeName error:(NSError *__autoreleasing *)outError {
self.isNew = NO; // New documents don't call this method
BOOL success = [super readFromURL:url ofType:typeName error:outError];
// This must go after calling super
self.isSaved = self.fileURL != nil; // Saved documents set fileURL
self.isUnsaved = self.fileURL == nil; // Unsaved/restored documents don't set fileURL. The url parameter points to a temporary folder.
return success;
}
答案 1 :(得分:0)
答案是-[NSDocument draft]
。
https://developer.apple.com/documentation/appkit/nsdocument/1515065-draft