如果这有点令人困惑,这里是一个视觉表现:
数组>对象>字典>值
如果这有帮助,可以参考以下内容:
数组包含播放列表。每个播放列表都有一个字典。每个字典都包含元数据。
我需要通过此元数据对原始字典进行排序。
我一直很难实现这一点。想法?
[编辑] 将较高的字典更改为数组
答案 0 :(得分:5)
您想要使用至少一个NSSortDescriptor
。这基本上是一种表示排序方式的抽象方式。它可以包含一个键路径(在一秒钟内更多)或一个函数指针,或其他一些比较两个对象的方法。
您可能希望将其与关键路径一起使用。因此,如果您有一个Foo
个对象数组,并且它们具有返回NSDictionary
的“字典”属性,并且您希望根据字典{{}下的字典中的值对数组进行排序。 1}},然后您创建的排序描述符将是:
@"bar"
从此处您可以使用[NSSortDescriptor sortDescriptorWithKey:@"dictionary.bar" ascending:YES]
并将其传递给包含此-[NSArray sortedArrayUsingDescriptors]
的数组。