【发布时间】:2013-01-31 01:53:42
【问题描述】:
CoreData 一对多默认生成NSSet,如何将NSSet改为NSMutableArray?我尝试手动更改,但报错:
_NSFaultingMutableSet filteredArrayUsingPredicate:]: unrecognized selector sent to instance 0x1ed35e40'
【问题讨论】:
CoreData 一对多默认生成NSSet,如何将NSSet改为NSMutableArray?我尝试手动更改,但报错:
_NSFaultingMutableSet filteredArrayUsingPredicate:]: unrecognized selector sent to instance 0x1ed35e40'
【问题讨论】:
NSSet 有方法allObjects,它返回一个NSArray。
要获得NSMutableArray,您可以这样做:
NSMutableArray *array = [NSMutableArray arrayWithArray:myCoreDataObject.mySet.allObjects];
注意:不保证每次的顺序都相同(集合不排序)。如果订单对您很重要,请考虑使用NSOrderedSet。
另请参阅NSSet 上的文档:
PS:
您收到上述错误的原因:
NSSet(或_NSFaultingMutableSet)没有名为filteredArrayUsingPredicate的方法。
【讨论】: