Ios 使用NSFetchedResultsController显示展平树结构

Ios 使用NSFetchedResultsController显示展平树结构,ios,objective-c,core-data,nsfetchedresultscontroller,Ios,Objective C,Core Data,Nsfetchedresultscontroller,我正在检索基本上是一个相册结构的内容 相册可以有父相册和子相册。所有关系都将在核心数据中设置 我正试图找出一种方法,我可以用NSFRC显示这些。它们看起来像一棵树(它们还有一个depth属性,我将使用该属性设置它们在每个单元格中缩进的距离),但实际上它们只是一个平面列表 基本上我想要这样的东西: |-album1 |-album2 |--subalbum1 |--subalbum2 |---subsubalbum3 |-album3 |--subalbum3 不确定是否有办法解决这个问题,比如

我正在检索基本上是一个相册结构的内容

相册可以有父相册和子相册。所有关系都将在核心数据中设置

我正试图找出一种方法,我可以用NSFRC显示这些。它们看起来像一棵树(它们还有一个depth属性,我将使用该属性设置它们在每个单元格中缩进的距离),但实际上它们只是一个平面列表

基本上我想要这样的东西:

|-album1
|-album2
|--subalbum1
|--subalbum2
|---subsubalbum3
|-album3
|--subalbum3
不确定是否有办法解决这个问题,比如在NSFRC中进行排序,至少我的大脑没有想到。可能是每个相册上引用其根相册的临时属性


如果您使用的是sqlite存储,并且希望使用NSFetchedResultsController,则需要实现“嵌套集”模型[1]。不过实现有点复杂,所以如果数据集足够小,可以放入内存,那么不使用NSFetchedResultsController并手动进行排序可能会更容易


[1]

每个相册是否都有一个标识号,可以为每个相册增加标识号(或者您可以添加一个标识号)?定义所需顺序的是什么?你有设定的最大深度吗?最大深度是6。根相册可能按名称按字母顺序排列,每个嵌套组也是如此。我不确定我是否理解你的第一个问题。相册有唯一的id,但它们并不完全基于其父相册。您可以分享一些关于该模型的信息吗?@flexaddicted model添加了问题。我猜您使用的是SQLite商店。你不能对暂时的属性进行排序,这样会使生活变得困难。