gpt4 book ai didi

ios - URL 图像不适用于 Swift Playgrounds 中的 UIButton

转载 作者:行者123 更新时间:2023-11-29 05:55:35 25 4
gpt4 key购买 nike

我尝试使用以下代码从 URL 制作 UIImage,并将 URL 输入到浏览器中工作正常。如果我更改背景颜色,该按钮也可以完美运行并显示出来,但图像不会显示在按钮上。我正在使用最新版本的 Swift Playgrounds。

let ARIconURLString = "https://lh3.googleusercontent.com/emT3b9yhU2o-uz-ZOoomqucgSvylLeWOKYKWbz88tP9zWJSzmIKiADxTWtxD39OiCO_aitwvhIzQ8ICmFbjSuZPTAgvgIEADjN3eft3IQewMVNNLsiKlYPQqnIzAvtn98Do5tBkAcNcY0Li1mX01UQmYyGBx8jF9oCytWirOxOwU68cF00oioqb1x-PVddQiMwcKf1UYtsqSUVXGvwK4G2KkSWOgvXYiH243bzt9PdVvDmz6rVsKqqTUTJewsKyyQf77xF772T8E_tkGQx0g-h8xgKhBhWJI21Zr2v1Z6A_c5xY7arR2ltA-m_yV30afoPm1wCz4dosnqNs7VqCdt2VnhMLhjc-NdFeVYG6b1LAmMDyZOFkTw_xrmnh-Z416ffolEtcZMjuNzEbHwBFwFDsmpMJj-R4SKXrRxtgBrYwRCpG1G3icgI_0G-Kj_rHIHrw4nMfHb708X5_K1SKIyeL5LIThfnxk5JOuS11vX680nFMRu9kmzrP3IdFoJT-6JLYPHtuTgS0kXfcoN7F3QSKd6E2Fl-X8uOxNRSbl9lvKk0I7ymChF5XFHJh5Q1zWCFxczDf8gEdQ1gKGJn4IrzISSwGqw51U2BgGQ6t5qV26CYIoRVeG1tZYUPBdtOdwrOPXgoP6oZDlemcfuJhxJxC4qAV8CSA=s512-no"
let ARIconURL = URL(string: ARIconURLString)!
let ARIconData = try! Data(contentsOf: ARIconURL)
let ARIcon = UIImage(data: ARIconData)
ARButton.contentMode = .scaleAspectFit
ARButton.setImage(ARIcon, for: .normal)

最佳答案

使用同步代码通常是一种不好的做法。通常你可以异步获取图像:

   final private func downloadFrom(urlString: String?){


self.imageView.image = nil

guard let urlString = urlString, let myURL = URL(string: urlString) else{
return
}

let session = URLSession.shared

self.task = session.dataTask(with: myURL) { (data: Data?, response: URLResponse?, error: Error?) in

if let error = error {
print(error)
return
}


guard let data = data else{
return
}


if 200 ... 299 ~= statusCode {
self.loadImage(data: data)
}else{
// self.manageError(data: data)
}

}

self.task?.resume()
}




final private func loadImage(data : Data){
let image = UIImage(data: data)
DispatchQueue.main.async {
self.imageView.image = image
}
}

关于ios - URL 图像不适用于 Swift Playgrounds 中的 UIButton,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55204128/

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