我从服务器收到以下NSDictionary。我不知道如何访问每一行并将它们放在UITableView中。我需要一个for循环或者一个接一个地访问它们的东西:当我说:
时我会得到关注NSLog(@"%@",dict);
{
chores = (
{
"first_due_date" = "2016-03-12";
frequency = weekly;
id = 1;
name = TEST;
parent = Blah;
"previous_chores" = (
);
},
{
"first_due_date" = "2016-03-12";
frequency = weekly;
id = 2;
name = TEST2;
parent = Blah;
"previous_chores" = (
);
},
{
"first_due_date" = "2016-03-12";
frequency = weekly;
id = 3;
name = TEST3;
parent = Blah;
"previous_chores" = (
);
}
);
}
答案 0 :(得分:2)
我猜你可以直接使用数组,而不会像下面那样拆分:
假设你有一个带字典的数组,并且在字典里面作为你的数据,kiran说:
NSArray *arrChores = [dict valueForKey @"Chores"];
您的数组看起来像第0个索引:
{
"first_due_date" = "2016-03-12";
frequency = weekly;
id = 1;
name = TEST;
parent = Blah;
"previous_chores" = (
);
}
所以你可以在cellForrowIndex中打印如下的名字:
NSLog(@"=== %@",[[arrChores objectAtIndex:indexPath.row]valueForKey:@"name"])
更简单,更少维护:)
答案 1 :(得分:1)
为家务创建模型。
看着字典。
杂项是一个由字典组成的数组。
所以你可以拥有这样的数组
arrChoresGlobal = [NSMutableArray new];
NSArray *arrChores = [dict valueForKey @"Chores"];
然后迭代这个数组并有一个模型。
如下所示
for(NSDictionary *dctChore in arrChores)
{
SomeModel *obj = [SomeModel new];
obj.first_due_date = [dctChore valueForKey:@"first_due_date"];
[arrChoresGlobal addObject:obj];
}
然后在tableview
中的numberOfRows中使用此数组计数return [arrChoresGlobal count];
和cellForRowAtIndexPath
SomeModel *obj = [arrChoresGlobal objectAtIndex:indexPath.row];
编辑: - 更长但更系统的方式:)