0

Core Data エンティティにバインドされた TableView があり、AppDelegate に saveAction メソッドがあります。

まず、AppDelegate で saveAction にリンクするボタンを作成します。ボタンをクリックすると、saveAction メソッドが正常に起動され、データが保存されます。

ウィンドウを閉じたときにこれと同じ関数をトリガーしたいので、AppDelagate で次のように作成します。

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

ウィンドウを閉じると、ブレークポイントに到達し、saveAction が実行されますが、何も保存されません。私が確認できる唯一の違いは、ボタンがクリックされると、saveAction は NSButton の送信者を受け取りますが、windowShouldCLose を介してトリガーされると、送信者は NSWindow としてログに記録されることです。

足りないものはありますか?これらすべてに非常に新しいので、かなり可能性があります。アドバイスをいただければ幸いです。

4

1 に答える 1

1

私はほとんど同じ問題を抱えていました-それを追加した後に修正されました:

インターフェイスビルダーで、「閉じる必要がある」機能を制御するウィンドウを選択し、接続インスペクターを開きます...参照アウトレットとAppDelegateの間に接続が必要ですが、名前の付いたアウトレット間にも接続が必要です「デリゲート」とAppDelegate(私の場合、デフォルトでは最初のものしかなく、この「閉じる必要がある」機能で何日も怒っていました.2番目のものを追加した後、すべてが突然OKになります...)

于 2012-12-15T14:06:21.900 に答える