Iphone Xcode Obj-C:从一组字典中的每个键生成新的NSArray

Iphone Xcode Obj-C:从一组字典中的每个键生成新的NSArray,iphone,objective-c,arrays,xcode,dictionary,Iphone,Objective C,Arrays,Xcode,Dictionary,这实际上可能是一个多部分的问题。但这是第一部分 我有一个字典数组(实际上是plist)。每本字典有三个键:(标题),(要点)和(说明) 我试图用第一个数组中每个字典的键“title”的值创建一个新数组 让我解释一下我为什么这么做,也许这会提供一个更好的全面解释 我试图让人们从预先确定的列表中进行选择。见鬼,如果这是一个网页,它会非常简单,因为我真正关心的是“点”和“标题”。在一个网站上,我可以简单地做一个下拉组合框,“点”是值,标题是每行的文本 但这不是一个网页 所以我想做的是当他们点击文本字段

这实际上可能是一个多部分的问题。但这是第一部分

我有一个字典数组(实际上是plist)。每本字典有三个键:(标题),(要点)和(说明)

我试图用第一个数组中每个字典的键“title”的值创建一个新数组

让我解释一下我为什么这么做,也许这会提供一个更好的全面解释

我试图让人们从预先确定的列表中进行选择。见鬼,如果这是一个网页,它会非常简单,因为我真正关心的是“点”和“标题”。在一个网站上,我可以简单地做一个下拉组合框,“点”是值,标题是每行的文本

但这不是一个网页

所以我想做的是当他们点击文本字段时弹出一个模式选择器。模态选择器显示新数组中按字母顺序排列的“标题”。无论他们选择哪一个,它都会关闭模式视图,并将该“标题”文本指定给用户无法编辑的
UITextField

我有一些代码让我的模态选择器弹出。但我需要为它提供一个数组,该数组只包含我实际数组中每个字典的“标题”

[array valueForKeyPath:@"title"]
这将返回一个新数组,其结果是对数组中的每个对象调用[obj valueForKey:@“title”]

在这种情况下,您应该能够使用

[array valueForKey:@"title"]

同样,但是如果您想深入了解字典(如“person.name”或其他内容),关键路径版本非常好。

这将贯穿我数组中的所有字典?就像做一个。。。newArray=[mainArray valueForKey:@“title”]我来自11年(许多月前)的程序背景(VB、DOS等)。所以我需要一些时间来适应。我的第一反应是做一些for语句,在我的“mainArray”中的所有字典中循环,然后做一个循环,然后将标题一个接一个地添加到一个新数组中。请原谅我的无知。只是对你发布的方法在整个数组中循环感到困惑。伙计,我希望iPhone有safari风格的下拉组合框,是的,它将遍历数组中的每个对象并获得“title”属性。请参阅NSArray上的“valueForKey:”文档。当然,您可以一个接一个地循环,并用标题构建一个新数组;这并不难。但是“valueForKey:”已经在为你做这些了。