iphone - 用 CoreData 对象填充 NSSet

标签 iphone ios core-data nsset

我在 Core Data 中有一对多关系。现在我想从我的核心数据实体中创建一个对象并将其设置为 NSSet。我认为核心数据对象是以正确的方式实例化的。但是我无法将我的对象设置为 NSSet。

AppDelegate *appDelegate = [[UIApplication sharedApplication]delegate];
NSManagedObjectContext *context = [appDelegate managedObjectContext];

NSSet *selectedCategories = [NSSet set];

for (NSString *categoryName in self.categories /*NSMutableArray propterty*/) {
    Category *category = [NSEntityDescription  
    insertNewObjectForEntityForName:@"Category" inManagedObjectContext:context];
    category.name = categoryName;
    [selectedCategories setByAddingObject:category];
}

[self.delegate addCategoryViewControllerDidSelectCategory:
                                 self didSelectCategories:selectedCategories];

我对 Core Data 和 iOS 还是个新手。我希望你能帮助我。 提前谢谢你。

最佳答案

这一行

[selectedCategories setByAddingObject:category];

创建一个未分配给任何变量的新集合。尝试使用可变集

NSMutableSet *selectedCategories = [NSMutableSet set];

for (NSString *categoryName in self.categories /*NSMutableArray propterty*/) {
    Category *category = [NSEntityDescription  
    insertNewObjectForEntityForName:@"Category" inManagedObjectContext:context];
    category.name = categoryName;
    [selectedCategories addObject:category];
}

关于iphone - 用 CoreData 对象填充 NSSet,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16572791/

相关文章:

iphone - 如何在 UITabBar (iOS) 中禁用栏项目的标题

iphone - 以编程方式打开/关闭 GPS,而不提示 iPhone 中的用户

ios - iPhone BLE/GATT 接口(interface)

ios - 选择表格中的单元格无法正常工作

objective-c - 核心数据以编程方式向条目添加属性

ios - Swift 中的核心数据通知

c++ - iPhone 拇指和 VFP

ios - 双问号,它是如何工作的?

ios - 不能使用 NSMutableDictionary 键作为数组中的索引吗?

ios - 核心数据“找不到源存储的模型”;