2012-09-18 44 views
0

我有一個TableView綁定到一個核心數據實體,我有一個saveAction方法在我的AppDelegate中。TableView與核心數據:從窗口調用saveActionShouldClose

首先我創建一個鏈接到AppDelegate的saveAction的按鈕。當我點擊按鈕時,saveAction方法被觸發得很好,數據被保存。

我想,當我關閉窗口來觸發此相同的功能,所以我創建AppDelagate如下:

- (BOOL)windowShouldClose:(id)sender{ 
    // Breakpoint here is reached. 
    [self saveAction:sender]; 
    return true; 
} 

當我關閉窗口,到達斷點,saveAction運行,但沒有被保存。我可以確定的唯一區別是當單擊按鈕時,saveAction接收NSButton的發送者,但是當通過windowShouldCLOSE觸發時,發件人將被記錄爲NSWindow。

有什麼我失蹤?對於所有這些都很新鮮,很可能。任何意見,將不勝感激。

+0

控制檯中是否有任何錯誤消息? – Vervious

+0

絕對沒有。 –

回答

1

我幾乎同樣的問題 - 固定並稱之後:

在Interface Builder

,選擇要控制「應該關閉」功能,打開連接檢查窗口...你必須有一個你的引用插座和AppDelegate之間的連接,但你還必須在名爲「Delegate」的插座和AppDelegate之間建立連接(在我的情況下,默認情況下只有第一個插件,因爲這個「應該關閉」功能,加入第二個之後,所有東西都會突然發生變化......)