我正在创建一个跟踪膳食的桌面视图。对于上下文,我有两个其他swift文件,每个文件都有一个struct Meal,另一个是Food结构(如下面的代码所示,在“meal”变量中初始化。
var meals: [Meal] = [Meal(name: "breakfast", food: [Food(name: "eggs", description: "3 eggs")]), Meal(name: "lunch", food: [Food(name: "sandwich", description: "ham and cheese sandwich")]), Meal(name: "dinner", food: [Food(name: "steak", description: "steak with a side of potatoes")])]
我被问到的是如何返回每个部分中的行数(每个部分都是一个用餐对象)。
我通过输入meals.count得到numberofSections来返回部分的数量,以返回对象的值:
override func numberOfSections(in tableView: UITableView) -> Int {
return meals.count
}
现在我需要访问numberOfRows中每个膳食对象中的“食物”对象的数量:
override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return meals.food.count
}
但是我得到一个错误,上面写着“类型[膳食]的价值没有成员”食物“。我不知道还能做什么。在这种情况下,我只在每个食物对象中放入一个食物对象,所以我知道值将为1,但我需要直接从变量中访问数字。
感谢任何帮助!
答案 0 :(得分:1)
您需要获取与该方法中的部分对应的个人food
的{{1}}数组的计数。所以简单的解决方案是这样的:
Meal