我有一個簡單的程序,單擊窗口上的按鈕觸發AppDelegate中的IBAction,並向Context添加一個新的managedObject - 這裏沒有任何問題,所有工作都應該如此。在控制器中使用MoC而不是AppDelegate
我遇到的問題是當我創建一個MainController來控制窗口 - 我該怎麼做同樣的事情?我所做的一個解決方案是在MainController中實例化AppDelegate實例,將窗口上的按鈕鏈接到調用AppDelegate add方法的MainController中的IBAction。這有效,但不知道這是否是最好的方法。
任何想法或建議,將不勝感激。
聽起來不錯,我怎麼打發managedObjectContext沒有在MainController創造AppDelegate中的一個實例? – littleDrummerBoy 2014-10-08 19:56:01
你爲什麼要在你的MainController中創建一個AppDelegate的實例。爲什麼不在你的mainController和 - (void)applicationDidFinishLaunching中聲明一個managedObjectContext屬性:(NSNotification *)aNotification當你實例化你的maincontroller時,使用App Delegate的managedOBjectContext屬性設置屬性managedObjectContext屬性,這個屬性又將managedObjectContext的引用傳遞給你的maincontroller並且您可以保留在那裏添加/刪除對象的所有邏輯。 – 2014-10-08 19:56:54
我創建了一個實例,所以我可以訪問MoC - 這是我能想到的唯一方法。 – littleDrummerBoy 2014-10-08 19:58:57