gpt4 book ai didi

ios - 传递 URL 数组的问题

转载 作者:行者123 更新时间:2023-11-28 08:01:52 25 4
gpt4 key购买 nike

我正在解析一个 json 响应以获得大约 10 个图像的 URL。我正在获取 imageURL 中的那些,如下面第二个代码片段中给出的那样。现在,当我不得不通过指定 URL 向 Collection View 显示图像时,我是这样做的...

let myImgUrl = "http://myapp…..”

let url = URL(string: imageurl)
let data = try? Data(contentsOf: url!)
self.sampleImageView.image = UIImage(data: data!)
self.arrayOfURLImages.append(self.sampleImageView.image!)

//--------在此处获取imageURL------------

if let projectData = jsonDict["Productdata"] as? [[String: Any]] {
let productIds = projectData.flatMap({ $0["product_id"] as? String })
let images = projectData.flatMap({ $0["product_images"] as? [[String: Any]] }).flatMap({ $0 })
let imageURL = images.flatMap({ $0["image_url"] as? String })

}

现在我必须将 imageURL 分配给 myImgUrl。如果我直接传递 imageURL,它会给出错误..'无法将类型 '[String]' 的值转换为预期的参数类型 'String''。我该如何解决这个...?

此外,这是 json 响应..

{
"success": 1,
"TotalRevenue": “123.12 K",
"Productdata": [
{
"product_id": "5",
"product_name": “abc”
"product_images": [
{
"id": "938",
"image_url": "http://myApp.direct.com/public165_1_image_15",
"is_default": "1"
},
{
"id": "939",
"image_url": "http://myApp.direct.com/public165_1_image_16",
"is_default": "0"
}

]
}

最佳答案

flatMap 返回其类型的数组。在本例中,它返回一个 [String]myImgUrl 在您的代码中是一个包含 String 的常量,而不是 [String]。您必须从 imageURL 中获取一个特定 String 并将其分配给 myImgUrl。也就是说,对于您粘贴的代码,这将失败,因为 myImgUrl 是一个 let 常量,您无法根据定义重新分配其值。如果 imageURL 中的字符串是 myImgUrl 将拥有的第一个值,那么一切正常,但如果您使用其他内容初始化 myImgUrl首先,您必须使用 var 而不是 let

关于ios - 传递 URL 数组的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46424849/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com