gpt4 book ai didi

ios - 从闭包中为变量赋值 - iOS Swift

转载 作者:行者123 更新时间:2023-11-28 07:25:05 24 4
gpt4 key购买 nike

我试图将闭包中的图像(从 API 下载)分配给变量。实现执行的闭包是一个转义闭包。

因为那是转义闭包,我收到“预期返回‘UIImage’的函数中缺少返回值?”

请教如何解决这个问题

 var posterPath: UIImage? {
get {
let url = posterData.medium[0].url
self.imageFor(for: url) { (image) in
return image
}
}
//returns error here as there is no return statement
}

最佳答案

我认为你可以通过在你的函数中有一个转义参数来实现这一点,就像这样:

func getTheImageFromApi(success: @escaping (_ image: UIImage) -> ()){

let url = posterData.medium[0].url
self.imageFor(for: url) { (image) in
success(image)
}

}

然后在你的 View Controller 中使用这个函数:

var posterPath: UIImage?

override func viewDidLoad() {
super.viewDidLoad()

getTheImageFromApi(success: { image in
self.posterPath = image
})
}

关于ios - 从闭包中为变量赋值 - iOS Swift,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56826678/

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