我有一个 NSOutlineView 备份 NSTreeController ,它从 NSManagedObjectContext 获取数据,除了插入新对象外,一切正常。
我想插入一个新对象,然后立即将焦点放在它上面并使其可编辑。
如果我通过以下方式创建一个新的 NSManagedObject:
Obj *p = [NSEntityDescription insertNewObjectForEntityForName:@"Obj"
inManagedObjectContext:[self managedObjectContext]];
它会立即插入,但我似乎无法选择并获取它。
现在,如果我通过
NSUInteger pathSource[2] = {0, 0};
[self.projectTreeController insertObject:p
atArrangedObjectIndexPath:[NSIndexPath indexPathWithIndexes:pathSource length:2]];
它立即被选中,我可以使其可编辑。
问题是我不能同时使用这两种方法(我看到重复条目),并且如果不首先使用#1,就不能使用方法#2。
理想情况下,我想使用方法#2,但不重复输入。
那么,插入/添加由 Core Data 支持的新对象的首选方法是什么?