我将日期存储在核心数据实体中 属性,然后我显示日期 表格单元格。我想把所有人分组 细胞按月数而且只有 显示相关日期 正确的部分。
我正在使用的sectionNameKeyPath NSFetchedResultsController,但我需要 仅使用日期中的月份 组。我怎样才能做到这一点?我可以吗 需要创建一个新的属性和 将月份存储为字符串或 我可以使用NSPredicate吗?
如果有人,请任何人都可以告诉我 这样做或给我一些 实例
由于
答案 0 :(得分:5)
第一步,确保项目中有一个托管对象类,代表存储日期的核心数据实体。第二步,在该实体的实现文件中,编写一个返回该对象月份的方法。它应该查看日期变量并使用NSDateComponents
方法来确定月份。您无需为其创建新属性。第三步,初始化NSFetchedResultsController时,将返回月份的方法名称作为sectionNameKeyPath
参数传递。您实际上在做的是创建一个“getMonth”方法,该方法以编程方式确定月份,并将其返回的值提供给sectionNameKeyPath。我希望这很清楚。如果没有,请询问澄清。
请注意。确保您的月份方法以适当顺序(即不按字母顺序)排序的方式返回月份,并且表视图将其转换为有意义的字符串。
答案 1 :(得分:4)
Apple有一个非常棒的样本,展示了如何实现这一目标。我认为这正是你要找的。