【发布时间】:2018-10-13 04:17:01
【问题描述】:
我正在使用 JSONDecoder 通过 API 访问 JSON 数据。在这个 JSON 数据中有几个 [arrays]。我遇到了访问每个出现密钥的实例的问题。
代码如下:
var details = [Details]()
var production = [Production]()
struct Details: Codable {
let title: String
let poster_path: String?
let id: Int?
let production_companies: [Production]
}
struct Production: Codable {
let name: String
}
let task = session.dataTask(with: request, completionHandler: { (dataOrNil, response, error) in
if let data = dataOrNil {
do { let details = try! JSONDecoder().decode(Details.self, from: data)
let production = details.production_companies
print(production)
}
}
})
这是print(production) 打印到控制台的内容:
[Film_Bee.DetailsView.Production(名称:“哥伦比亚影业”)、Film_Bee.DetailsView.Production(名称:“漫威娱乐”)、Film_Bee.DetailsView.Production(名称:“索尼影业”)]
我想要做的是访问数组中的每个name。我知道要访问第一个,我可以使用production.first?.name,但如果我不确定如何访问每一个以放入单个标签中。
【问题讨论】:
-
您要将三个公司的名称添加到单个 UIlabel 中还是三个 UIlabel 中?
-
我想将它们放入一个标签中。
-
我对您的previous question 的回答显示了如何获取数组中的所有项目。