我正在寫一個應用程序,處理圖片的相冊。從NSArray的NSDictionary對象,如何獲得獨特的NSArray
我有以下列出相冊的JSON文檔。
{
"Albums": [
{
"id": 1234,
"Title": "My Birthday 2008",
"Category": {
"id": 0,
"Name": "Birthdays"
}
},
{
"id": 5678,
"Title": "Disneyland Trip 2010"
"Category": {
"id": 1,
"Name": "Trips"
},
}
]
}
正如您所見,相冊駐留在類別中。
我已經使用NSJSONSerialization類將它帶入NSDictionary對象,該對象包含NSDictionaries的NSArray(根據上述JSON的「模式」)。
由此,我想要生成一個唯一的類別NSDictionary對象的NSArray。喜歡的東西:
{
"Categories": [
{
"id": 0,
"Name" : "Birthdays"
},
{
"id": 1,
"Name" : "Trips"
},
]
}
精練計算器,我發現了一些東西,似乎是好積木
categories = [albums valueForKeyPath:@"@distinctUnionOfObjects.Category.Name"];
但這顯然只是產生NSString的的一個NSArray。我想要的是它是NSDictionaries的NSArray,其中有兩個對象,其中帶有「id」和「Name」鍵。我似乎無法將它們放在一起以獲得我想要的,而沒有嵌套if循環的poorman/brute方法。我想我正在尋找NSDictionary或NSArray類的一些實用方法,可以幫助我更快地完成此操作。
任何幫助表示讚賞,謝謝。
使用JSON/SBJSON/JSON解析器來做好這項工作,不應該在這裏使用KVC – dayitv89 2012-04-12 04:38:15
@steven,可以請你表現出一定的工作代碼。 – Vats 2016-01-08 13:08:20