Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/111.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios NSFetchedResultController操作名称-根据日期进行自定义排序_Ios_Iphone_Core Data_Nssortdescriptor_Nsfetchedresultscontroller - Fatal编程技术网

Ios NSFetchedResultController操作名称-根据日期进行自定义排序

Ios NSFetchedResultController操作名称-根据日期进行自定义排序,ios,iphone,core-data,nssortdescriptor,nsfetchedresultscontroller,Ios,Iphone,Core Data,Nssortdescriptor,Nsfetchedresultscontroller,我正在使用NSFetchedResultController。下面是我想要实现的场景 我有一个带有属性MessageDate(即NSDate)的表Messages。我需要按日期标签对邮件进行排序,如今天、昨天、上周和更早 我尝试将NSSortDescriptor与选择器方法一起使用,但选择器方法格式仅返回NSComparisonResult对象 不要对结果进行排序,而是尝试在获取请求本身中添加排序描述符。并使用此获取请求创建NSFetchedResultController实例 例如,您可以使

我正在使用NSFetchedResultController。下面是我想要实现的场景

  • 我有一个带有属性MessageDate(即NSDate)的表Messages。我需要按日期标签对邮件进行排序,如今天、昨天、上周和更早

  • 我尝试将NSSortDescriptor与选择器方法一起使用,但选择器方法格式仅返回NSComparisonResult对象


不要对结果进行排序,而是尝试在获取请求本身中添加排序描述符。并使用此获取请求创建NSFetchedResultController实例

例如,您可以使用此代码段

NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"messageDate" ascending:YES];

NSArray *sortDescriptors = [[NSArray alloc] initWithObjects:sortDescriptor, nil];

[fetchRequest setSortDescriptors:sortDescriptors];

NSFetchedResultsController *myFetchedResultsController = [[NSFetchedResultsController alloc] initWithFetchRequest:fetchRequest managedObjectContext:managedObjectContext sectionNameKeyPath:@"message" cacheName:nil];                                                                                                                                                                               

你有没有读过关于分区工作原理的书?您的实现中有单独的排序和节名称吗?显示代码。是的,我显示了。我需要对日期进行排序,并将其与当前日期进行比较。例如,如果消息日期是今天的日期,则应将其分组在一起。如果是昨天的,则应将其分组到昨天的组中,依此类推。您可能需要添加有关
sectionNameKeyPath:@“message”