Swift 2 SwiftyJSON API 数据到 UITableView
Swift 2 SwiftyJSON API data to UITableView
我的应用应该显示产品标题/价格/产品图片/产品描述,它使用Alamofire和SwiftyJSON获取JSON格式的数据并将其显示在 UITableview 中。
link到JSON的数据是:https://www.spree.co.za/api/v1/catalog/browse/2641
还有很多我不需要的其他信息。我将如何保存例如。数组中的 "title"、"imageURL"、"Size"?
这是我用来获取 "titles"
的代码var productTitles = JSON
func getJsonData(){
Alamofire.request(.GET, "https://www.spree.co.za/api/v1/catalog/browse/2641").responseJSON { (response) -> Void in
//Check if the result have value
if let value = response.result.value {
let json = JSON(value)
let objects = (json["products"])
//While Loop
var x = 0
while x < objects.count {
self.productTitles.append(objects[x]["title"])
x++
}
//Test
print(self.productTitles[3])
}
}
}
你可以这样做:
func getTitlesFromJson(data: AnyObject?) -> [String] {
guard data != nil else {
return []
}
let json = JSON(data!)
var titles: [String] = []
for (_, subJson): (String, JSON) in json["products"] {
if let title = subJson["title"].string {
titles.append(title)
}
}
return titles
}
并像这样使用它:
Alamofire.request(...).responseJSON { (response) -> Void in
//Check for error
...
let titles = getTitlesFromJson(response.result.value)
// Other actions
...
}
其他数组同理