从 swift 中的 API 调用传递 json 数组的所有成员

passing all members of a json array from an API call in swift

您好,我有一个项目,我实现了 ImageSlideshow 和 sdwebimage。图像是从 API 调用中获取的,但在 ImageSlideshow 的文档中 SDwebImages 的实现如下

let sdWebImageSource = [SDWebImageSource(urlString: "https://images.unsplash.com/photo-1432679963831-2dab49187847?w=1080")!, SDWebImageSource(urlString: "https://images.unsplash.com/photo-1447746249824-4be4e1b76d66?w=1080")!, SDWebImageSource(urlString: "https://images.unsplash.com/photo-1463595373836-6e0b0a8ee322?w=1080")!]

效果很好,但对于我自己的项目,我将所有图像都放在一个数组中,我想在 ImageSlideshow 中显示这些图像。我不知道图像的数量,因此很难对其进行硬编码,因此如何传递图像数组。 ProductServices.instance.selectedProduct?.productImg[0]) 这给了我第一个索引处的图像。图像可以达到第五个索引。我怎样才能通过这个?

你可以试试

var allImages = [SDWebImageSource]()
if let allStr = ProductServices.instance.selectedProduct?.productImg {
    for str in allStr {
       allImages.append(SDWebImageSource(urlString:str))  
   }
}

if allImages.isEmpty {
   // display custom image // or add it's default str 
}