问题很简短:
我有一些NSManagedObjects的数组,
所有这些都有一个NSDate属性
现在我想按照他们的日期排序,最新的第一个,
怎么可以实现呢?
答案 0 :(得分:2)
您希望将NSArray的sortedArrayUsingDescriptors:
方法与NSSortDescriptor一起使用。如果您的数组被称为array
并且NSDate属性被称为date
,那么这将起作用:
NSArray *sortDescriptors = [NSArray arrayWithObject:[NSSortDescriptor sortDescriptorWithKey:@"date" ascending:NO]];
NSArray *sortedArray = [array sortedArrayUsingDescriptors:sortDescriptors];
另外,请注意,当您使用NSFetchRequest获取这些NSManagedObject时,您可以给请求sortDescriptors,以便它们已经排序。使用上面的相同sortDescriptors
,在执行请求之前,请执行以下操作:
request.sortDescriptors = sortDescriptors;