我对Objective C中的编程非常陌生(就像几天一样),不幸的是有一个iPhone应用程序作为几天的课程项目(回想起来我可能应该选择不同的东西)。我的应用程序需要的主要功能之一是能够从菜单中选择菜肴,首先在一页上选择一餐,然后在下一页上选择类别,然后在最后一页上选择菜肴。我已经让我的应用程序从Internet API下载JSON文件并将其存储为NSArray变量,但现在我需要使用该数组来填充我的tableview。下面是我应用程序调试窗口中下载数组的示例。我已经有了app的基本框架(即几个不同的视图)。这来自一个示例应用程序,它使用plist文件中的数据填充tableview行,但我想使用此JSON数据。如何使用此数组使用存储在此NSArray变量中的JSON数据填充行? 谢谢!
2012-12-05 03:29:48.973 MLBMobile[3858:c07] {
category = "BREAKFAST MEATS";
date = "2012-12-05";
meal = BREAKFAST;
name = "Low-Sodium Ham";
portion = 1;
recipe = 319044;
unit = oz;
}
2012-12-05 03:29:48.975 MLBMobile[3858:c07] {
category = "BREAKFAST MEATS";
date = "2012-12-05";
meal = BREAKFAST;
name = "Roasted Low-Sodium Turkey";
portion = 4;
recipe = 113503;
unit = oz;
}
2012-12-05 03:29:48.976 MLBMobile[3858:c07] {
category = "BREAKFAST ENTREES";
date = "2012-12-05";
meal = BREAKFAST;
name = "Cheddar Cheese";
portion = 1;
recipe = 130029;
unit = oz;
}
2012-12-05 03:29:48.976 MLBMobile[3858:c07] {
category = "BREAKFAST ENTREES";
date = "2012-12-05";
meal = BREAKFAST;
name = "Hard Cooked Eggs - Cage Free";
portion = 1;
recipe = 061009;
unit = each;
}
答案 0 :(得分:0)
使用数组变量,您可以遍历每个元素。使用快速枚举:
for(NSDictionary *dict in yourArrayVariable){
NSString *category = [dict objectForKey:@"name"];
//...you get the point
}
现在,您只需设置行的属性即可填充行。例如,如果您使用默认的UITableViewCell:
cell.textLabel.text = name;
对于更好的数据/模型/视图分离,您可以做更多的事情,但我刚刚包含了一些示例,好像它们都是在一个文件中本地完成的。