0

NSFetchRsultController我使用:

[NSPredicate predicateWithFormat:@"type in %@", myArray];

我希望数据按数组中数据的顺序排列,但是NSSortDescriptor对于 是强制性的NSFetchResultController,那么NSSortDescriptor我必须使用什么?

4

2 回答 2

0

用户1800529,

看来您希望将顺序顺序的东西插入到您的数据库中。Core Data 不保证该顺序。因此,您需要选择要排序的东西。我使用创建时间,这是在我的大多数实体中,但您可以轻松地使用另一个属性。

安德鲁

于 2012-12-12T15:52:35.807 回答
0

您可以使用sortDescriptors按照数组的顺序对数据进行排序。

排序描述符指定发出获取请求时返回的对象应如何排序——例如,按姓氏然后按名字。排序描述符按照它们在 sortDescriptors 数组中出现的顺序应用(以最低数组索引优先顺序)。

代码示例:

...
NSMutableArray * sortDescriptors = [[NSMutableArray alloc] initWithCapacity:[myArray count]];
for (NSString * key in myArray)
  [sortDescriptors addObject:[[NSSortDescriptor alloc] initWithKey:key ascending:NO]];

[fetchRequest setSortDescriptors:sortDescriptors];
[sortDescriptors release];
...
于 2012-12-11T17:36:11.883 回答