Jan*_*edi 5 cocoa-touch core-data objective-c ios ios8
在iOS 7(及更早版本)中,有能力有效地创建"临时" NSManagedObject,并可以选择稍后将其添加到上下文并保留它,如下所示:
NSEntityDescription* entityDescription = [NSEntityDescription entityForName:@"User" inManagedObjectContext:managedObjectContext];
User* user = [[User alloc] initWithEntity:entityDescription insertIntoManagedObjectContext:nil];
Run Code Online (Sandbox Code Playgroud)
请注意nilNSManagedObjectContext参数.(查看马库斯S. Zarra的回答这个方法在这里)
但是,iOS 8已经更改了关系的管理方式,因此如果您在设置其上下文之前创建临时对象并添加关系,则在重新启动时将删除该关系:
User* user = [User temporaryEntity];
[user addPhotosObject:photo];
[managedObjectContext:insertObject:user];
[managedObjectContext:&error];
Run Code Online (Sandbox Code Playgroud)
这不会影响非关系对象,但确实无法创建具有关系的临时对象.
有谁知道如何解释这一变化并创建/使用临时工作NSManagedObject?谢谢!
-
此外,检查出这个在iOS 8论坛相关帖子.
| 归档时间: |
|
| 查看次数: |
1721 次 |
| 最近记录: |