嗨,我是iOS的初学者,在我的项目中,我使用JSON服务。
请参阅下面的JSON结构。
我想获取元素内部的所有"languages
",但我不知道如何获取这些字段。
请帮帮我。
JSON结构:-
- loans: [
- {
id: 983381,
name: "America",
description:
{
languages:
[
name: "English"
]
},
},
- {
id: 983382,
name: "Jarmani",
description:
{
languages:
[
name: "Jarman"
]
},
},
- {
id: 983383,
name: "Rasya",
description:
{
languages:
[
name: "Rasya"
]
},
},
]
我的代码:-
NSMutableArray * array1 = [mainDictyionary objectForKey:@"loans"];
for (NSDictionary * obj in array1) {
LangArray = [obj objectForKey:@"languages"];
}
NSLog(@"so finally array values are %@", LangArray);
实际上,你得到的值是语言,而不是"英语"或其他任何语言。此外,您正在将值分配给LangArray
,因此它不会添加所有值,而是添加循环的最后一个值。
NSMutableArray * array1 = [mainDictyionary objectForKey:@"loans"];
NSMutableArray *LangArray = [NSMutableArray alloc] init];
for (NSDictionary * obj in array1) {
[LangArray addObject:[[obj objectForKey:@"languages"] objectForKey:@"name"]];
}
NSLog(@"so finally array values are %@", LangArray);
您需要将您的语言添加到LangArray
中,这样它就不会在每个循环中重新分配。
NSMutableArray * array1 = [mainDictyionary objectForKey:@"loans"];
for (NSDictionary * obj in array1) {
NSArray *language = [obj objectForKey:@"languages"];
LangArray.addObject(language);
}