【发布时间】:2014-11-13 10:21:46
【问题描述】:
我是 iOS 开发的新手。我想将我的 JSON 解析数据字典数组键值添加到另一个数组中,但它只会将我的最后一个数组索引添加到新数组中。
我的代码就像
-(void)fetchedData:(NSData *)responsedata
{
if (responsedata.length > 0)
{
NSError* error;
self.json = [NSJSONSerialization JSONObjectWithData:responsedata options:kNilOptions error:&error];
if ([[_json objectForKey:@"data"] isKindOfClass:[NSArray class]])
{
NSArray *arr = (NSArray *)[_json objectForKey:@"data"];
[self.imageArray addObjectsFromArray:arr];
[self.storeViewTable reloadData];
}
self.storeViewTable.hidden=FALSE;
}
NSMutableArray *imagearray=[[NSMutableArray alloc]init];
for (index=0; index <[self.imageArray count]; index ++)
{
for(NSDictionary *dict in self.imageArray )
{
imagearray = [dict valueForKey:@"demopage"];
self.imagesa = imagearray;
}
}
NSLog(@"Array Count %d",[self.imagesa count]);
NSLog(@"Another array Count %d",[self.imageArray count]);
}
这里 self.imagearray 是我的主数组,其中包含我的所有 JSON 数据,但我想从旧数据中解析一个新数据并将其添加到 self.imagesa 数组中对于 self-images 键的值是演示页面和 Self .imagearray 计数是三个(3)所以我希望我所有的三个索引值都包含在 self.imagesa 中,但它只包含最后一个索引值,请给我解决方案。我的 Web 服务链接在这里。 link
【问题讨论】:
-
删除
imagearray = [dict valueForKey:@"demopage"]; self.imagesa = imagearray;并添加[self.imagesa addObject: [dict valueForKey:@"demopage"]];,我认为你不需要for (index=0; index <[self.imageArray count]; index ++)这个循环。 -
@Chinttu-Maddy-Ramani 我为(NSDictionary *dict in self.imageArray){ [self.imagesa addObject: [dict valueForKey:@"demopage"]]; } NSLog(@"数组计数 %@",self.imagesa);然后它返回 null