我有一個單身數據控制器來容納一個對象數組。例如香蕉問題看我的解決方案:singelton dataController banansArray核心數據上下文和單身數據控制器
現在我想將香蕉數組保存爲持久狀態。這個核心數據教程:core data - store images讓我對Core Data有了一個很好的總體理解,在將我的數據Controller更改爲singleton之前,我可以將它包含在我的應用程序中。
現在什麼是最好的?
我是否需要將生成的核心數據堆棧在應用程序委託中移動到管理香蕉數組的單一數據控制器?或者,我是否必須像使用Core Data模板生成的Master-View控制器一樣在應用程序委託中設置單例的上下文?
在那種情況下,我該如何在appDelegate中設置上下文? 這並不在AppDelegate的應用didFinishLaunchingWithOptions:
DataControllerSingleton *dataController;
dataController.managedObjectContext = self.managedObjectContext;
在beerDataModel提供的示例ManagedObjectCode工作(它workes爲模板馬西德威)是:
if (_mainContext == nil) {
_mainContext = [[NSManagedObjectContext alloc] init];
_mainContext.persistentStoreCoordinator = [self persistentStoreCoordinator];
}
我已經在這篇文章中看到了答案:http://stackoverflow.com/questions/6622699/singleton-managedobjectcontext請隨時進一步評論,如果它是明智的,以這種方式使用singleton和coreData – djcj
個人選擇。我將它轉移到單身人士,所有權和管理都在一個地方。單例也更容易在需要訪問模型的類中獲得引用(與應用程序委託相比)。 – Wain