-2

我对使用 Objective C 编程非常陌生(几天后),不幸的是,几天后就有一个 iPhone 应用程序作为课程项目到期(回想起来我可能应该选择不同的东西)。我的应用程序需要的主要功能之一是能够从菜单中选择菜肴,方法是先在一个页面上选择餐点,然后在下一页选择类别,然后在最后一页选择菜肴。我已经让我的应用程序从 Internet API 下载 JSON 文件并将其存储为 NSArray 变量,但现在我需要使用该数组来填充我的表格视图。下面是从我的应用程序调试窗口下载的数组的示例。我已经有了应用程序的基本框架(即几个不同的视图)。这来自一个使用 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;
}
4

1 回答 1

0

使用数组变量,您可以遍历每个元素。使用快速枚举:

for(NSDictionary *dict in yourArrayVariable){
    NSString *category = [dict objectForKey:@"name"];
    //...you get the point
}

现在您可以通过设置行的属性来填充您的行。例如,如果您使用默认的UITableViewCell

cell.textLabel.text = name;

为了更好地分离数据/模型/视图,您可以做更多的事情,但我只是包含了一些示例,就好像它们都是在一个文件中本地完成的一样。

于 2012-12-05T09:15:54.873 回答