【发布时间】:2017-05-18 05:27:25
【问题描述】:
我有这两个功能:
func callAlamo(url: String){
Alamofire.request(url).responseJSON(completionHandler: {
response in
self.parseData(JSONData: response.data!)
})
}
func parseData(JSONData: Data) {
do {
var readableJSON = try JSONSerialization.jsonObject(with: JSONData, options: .mutableContainers) as! JSONStandard
if let tracks = readableJSON["tracks"] as? JSONStandard{
if let items = tracks["items"] as? [JSONStandard]{
for i in 0..<items.count{
let item = items[i]
let name = item["name"] as! String
if let album = item["album"] as? JSONStandard{
if let images = album["images"] as? [JSONStandard]{
let imageData = images[0]
let mainImageUrl = URL(string: imageData["url"] as! String)
let mainImageData = NSData(contentsOf: mainImageUrl!)
let mainImage = UIImage(data: mainImageData as! Data)
posts.append(post.init(image: mainImage, name: name))
self.tableView.reloadData()
}
}
}
}
}
}
catch{
print(error)
}
}
使用 alamofire 从 Spotify 检索歌曲信息。这些函数是在 UITableViewController 类中设置的。我在设置此图像的同一文件中设置了一个单独的 UITableViewCell 类:
let albumCoverImageView: UIImageView = {
let imageView = UIImageView()
imageView.translatesAutoresizingMaskIntoConstraints = false
return imageView
}()
我将如何使用从这两个函数中检索到的信息到该图像中?因为我无法从图像模仿中访问这些功能。
【问题讨论】:
-
您可以将图像存储在单独的成员变量中。由于您正在调用
reloadData,它将调用tableView的委托方法,然后您可以在cellForRowAtIndexPath中设置图像。 -
如何将图像存储在单独的成员变量中?
标签: ios json uitableview swift3 alamofire