有序核心数据关系 - 如何管理或默认排序是什么?

api*_*sip 22 default core-data objective-c ios

我尽力在这个论坛和网络上搜索答案,虽然我找到了一些相关的主题,但我找不到我想要的答案.我很抱歉,如果已经有一个,我可能已经错过了.

在核心数据中添加关系时,可以选择将关系设置为"Ordered"(复选框).核心数据如何管理关系的排序或什么是默认排序(如果有的话)?

说,我有一个Header和Detail实体.我指定了"To-Many"关系(Header可以有很多细节)并选中"Ordered"复选框.当我对"标题"进行提取时,我可以指定它将被命令的属性 - 我很好,我的问题与此无关.我将结果放在tableview上,当用户点击详细信息时,我将在另一个tableview中显示Detail.我没有使用FetchResultController来显示细节,我只是通过关系访问细节.这意味着我没有为细节指定任何排序.我的问题与此有关,核心数据如何管理详细信息的排序?由于我将关系指定为"Ordered",它是否真的按顺序排列细节?如果是,默认订单行为是什么?

iwa*_*bed 25

ordered设置仅NSOrderedSet在该实体内创建属性.基本上,它们是根据它们的添加顺序排序的.

您可以使用自己对集合进行排序 sortedArrayUsingComparator:

更多信息:https://developer.apple.com/library/mac/documentation/Foundation/Reference/NSOrderedSet_Class/Reference/Reference.html

  • @LeoNatan幸运的是,这不是问题。 (2认同)
  • [这是核心数据文档中描述的位置](https://developer.apple.com/documentation/coredata/modeling_data/configuring_relationships)。`安排:选择有序复选框以指定关系具有固有的顺序,并生成有序的可变集。` (2认同)