2017-01-06 3 views
1

Heute arbeite ich mit einem neuen Projekt in Xcode 8.1 erstellt, wo ich CoreData verwenden möchte.Xcode 8.1 - NSManagedObjectContext fehlt in AppDelegate

Mit Xcode 7 gab es automatisch ein NSManagedObjectContext-Objekt in der AppDelegate-Klasse, aber in Xcode 8.1 fehlt dieses Objekt.

Der NSPersistentStoreCoordinator wurde in NSPersistentContainer geändert.

Jetzt habe ich keine Ahnung, wie Sie auf den NSManagedObjectContext zugreifen, um Werte in CoreData zu schreiben und zu lesen.

In Projekten mit Xcode 7 erstellt, die die Art, wie ich getan habe war:

AppDelegate *delegate = (AppDelegate *)[UIApplication sharedApplication].delegate; 
NSManagedObjectContext *context = delegate.managedObjectContext; 

NSManagedObject *newEntity = [NSEntityDescription insertNewObjectForEntityForName:@"Entity" inManagedObjectContext:context]; 

jemand eine Lösung für mich?

Antwort

1

fand ich die Lösung:

NSManagedObjectContext *context = delegate.persistentContainer.viewContext; 

Nächstes Mal, wenn ich zweimal in der Dokumentation zu lesen.

+0

Hallo, können Sie einen Link zur Dokumentation für zukünftige Referenz hinzufügen? Diese Antwort ist sehr hilfreich. –

+0

Hey, tut mir leid, ich weiß nicht, in welcher Art von Dokumentation ich die Lösung gefunden habe, aber hier ist der Link zum NSPersistentContainer https://developer.apple.com/documentation/coredata/nspersistentcontainer?language=objc, aber ich ' Ich bin froh, dass es dir geholfen hat. – Chronisch