在其文檔中,我的應用程序使用了很多與文檔路徑相關的資產。因此,在添加資產之前必須保存該文檔。我如何強制調用[NSDocument saveDocumentAs]?強制NSDocument在創建後保存
我設法做它的部分:通過創建自己的文件控制器和內部openUntitledDocumentAndDisplay:強制這樣一個電話:
- (id)openUntitledDocumentAndDisplay:(BOOL)displayDocument error:(NSError **)outError
{
NSDocument * res = [super openUntitledDocumentAndDisplay:displayDocument error:outError];
[res saveDocumentAs:self];
return res;
}
這迫使保存對話框出現,但不幸的是我無法檢查用戶是否按下取消:saveDocumentAs調用是異步的,並立即繼續!
有沒有辦法解決這個問題?
這只是我不是所有與可可框架經歷和NSSavePanel看起來相當艱鉅。但我想我確實沒有別的選擇。謝謝(你的)信息 ! – cocoabeginner
我懂了! 但調用[saveToURL:url]後,「Save ...」菜單項保持暗淡!即使在修改文檔後,我也無法保存:-(打開文檔(爲空)將允許我再次保存。只有剛創建的文檔無法保存:-( – cocoabeginner
call updateChangeCount:正確表明有東西要保存,更好的是實現撤消操作。 –