按日期范围对NSFetchedResultsController部分进行排序

我正在尝试按日期范围对NSFetchedResultsController的各个部分进行排序。

在我的Core Data模型中,我有一个可选的date属性,该属性将用于表视图的各个部分中。我想使表格视图的每个部分代表一个特定的日期范围。这是范围:

  • 第0部分:日期为今天或今天之前的项目
  • 第1节:带有明天日期的物品
  • 第2 ... 7节:每节都是每天增加
  • 第8节:没有日期的项目

我能够使用第二个称为“ items”的数组来完成此操作,而无需使用带有以下代码的NSFetchedResultsController

request.predicate = NSPredicate(format: "date <= %@",Date.getEndDate(dateIncrease: 0) as NSDate)
items[0] = try context.fetch(request)

for dayIncrease in 1 ... 6 {
     request.predicate = NSPredicate(format: "date >= %@ && date <= %@",Date.getStartDate(dateIncrease: dayIncrease) as NSDate,Date.getEndDate(dateIncrease: dayIncrease) as NSDate)
     items[dayIncrease] = try context.fetch(request)
}

request.predicate = NSPredicate(format: "date = nil")
items[7] = try context.fetch(request)

tableView.reloadData()

现在,我想将此逻辑转换为NSFetchedResultsController,但是我没有运气。 NSFetchedResultsController具有sectionNameKeyPath属性的部分,但是我不能使用字符串来表示每个项目想要的日期范围。

有人可以按这个日期范围对我的表格视图部分进行排序吗?

zhaohevip 回答:按日期范围对NSFetchedResultsController部分进行排序

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3148031.html

大家都在问