私はここに、しかし、私はそれが適切に協力してもらうカント、URLを持っているし、リターン機能を介して画像をダウンロードしたいが、私のFUNCです:AlamofireImage経由でUIImageをダウンロードしていますか?
func getTabImage(url: URL) -> UIImage {
Alamofire.request(url)
.responseImage { response in
if let image = response.result.value {
return image
} else {
print("Failed to get image")
}
}
}
私はURLに渡し、UIImageから返さたいですアラモファイアの応答。
しかし、私はreturn文のために空の関数で
を
予期しない非空の戻り値を取得します。
これを正しく行うにはどうすればよいですか?
'return image'呼び出しがasynchroneなので、これは動作しません。代わりにクロージャーを使用してください。既に疑問がたくさんあります。「Swift + Closure + Async」を探してください。 " - > UIImage"と言ったからですが、 'if let image'のelseの場合は何も返しません。また、メソッドの最後には何も返さない。 – Larme
リンクされた例はURLSession用ですが、まったく同じ考えです。メソッドのラッパーシグネチャにコールバックを追加し、取得する値とともに使用します(この例ではStringですが、何でも構いません)。 – Moritz
@Moritz彼は明らかに** AlamofireImage **経由でUIImageをダウンロードしています**はhttps://stackoverflow.com/questions/31264172/how-can-i-get-the-data-from-nsurlsession-sharedsessionで重複してマークされません-datataskwithrequestは重複している可能性がありますが、この質問はあなたの著しい質問とは異なります! –