我正在使用SDK 10.8。如何取消窗口恢復?
我是繼承NSPersistentDocument
(但問題可能會讓人感興趣子分類NSDocument
),我想停用窗口恢復。到目前爲止,這裏是我做了什麼:
-(void)restoreStateWithCoder:(NSCoder *)coder
{
NSLog(@"No 1") ;
}
-(void)restoreDocumentWindowWithIdentifier:(NSString *)identifier
state:(NSCoder *)state
completionHandler:(void (^)(NSWindow *, NSError *))completionHandler
{
NSLog(@"No 2") ;
}
的問題是,當我嘗試在我的應用程序創建一個新的文件,沒有顯示窗口。
什麼是正確的方法來取消窗口恢復?
這只是用於測試目的?如果是這樣,有一個更好的方法可以做到這一點,而不會涉及到你的代碼。 –
此窗口恢復功能使我的應用程序無法啓動,例如在崩潰後(或者在'xcode'中單擊停止)。我不希望我的應用用戶面對同樣的問題,無法再啓動應用。因此,我想停用此功能。但是,如果你更好,那太棒了! – Colas
只有當您的存儲狀態損壞或者您更改了存儲在其中的密鑰時,纔會出現這種情況。在正常情況下,狀態恢復是爲了在發生崩潰時保存用戶數據(它們沒有手動保存) - 當應用程序崩潰時,用戶會希望它保留在那裏。出於調試的目的,你可以在你的Xcode方案中禁用狀態恢復:http://i.stack.imgur.com/zQAR4.png –