美文网首页iOS开发
downloadImages 工具方法

downloadImages 工具方法

作者: _浅墨_ | 来源:发表于2022-11-12 10:52 被阅读0次

    批量下载图片:

    func downloadImages(imageUrls: [String], completion: @escaping (_ images: [UIImage?]) -> Void) {
        
        var imageArray: [UIImage] = []
        
        var downloadCounter = 0
        
        for link in imageUrls {
            
            let url = NSURL(string: link)
            
            let downloadQueue = DispatchQueue(label: "imageDownloadQueue")
            
            downloadQueue.async {
                
                downloadCounter += 1
                
                let data = NSData(contentsOf: url! as URL)
                
                if data != nil {
                    imageArray.append(UIImage(data: data! as Data)!)
                    
                    if downloadCounter == imageArray.count {
                        
                        DispatchQueue.main.async {
                            completion(imageArray)
                        }
                    }
                } else {
                    print("couldnt dowload image")
                    completion(imageArray)
                }
            }
        }
    }
    

    相关文章

      网友评论

        本文标题:downloadImages 工具方法

        本文链接:https://www.haomeiwen.com/subject/oroxxdtx.html