Я загружаю изображение (успешно) из Parse. Мой вопрос: могу ли я поместить функцию, которая получает изображение в отдельном классе, и просто получить UIImage в качестве возвращаемого параметра? См. Пример ниже.Как вернуть UIImage из функции в swift?
В обоих заявлениях возвращения в функции ниже я получаю эту ошибку:
func getImgfromParse() -> UIImage {
//var imgFile: PFFile = PFFile()
var query = PFQuery(className: "puzzledata")
query.whereKey("wordAnswer", equalTo: "asd")
query.findObjectsInBackgroundWithBlock {
(objects: [AnyObject]!, error: NSError!) -> Void in
if error == nil {
println("Found something")
for object in objects {
println(object.objectId)
let pointsPerTile = object["pointsPerTile"] as String
let timeAllowed = object["timeAllowed"] as String
let wordAnswer = object["wordAnswer"] as String
let wordJumbled = object["wordJumbled"] as String
let imgFile = object["imageFile"] as PFFile
imgFile.getDataInBackgroundWithBlock({
(imageData: NSData!, error: NSError!) -> Void in
if (error == nil) {
let image = UIImage(data:imageData)
return image
}
})//getDataInBackgroundWithBlock - end
}
}
else {
println("%@", error)
}
return UIImage(data: "profile.jpg")
}
}
Ваш ответ выглядит правильно, но эта функция шахты фактически в отдельном классе-помощнике, чем фактический класс viewcontroller, где мне нужен этот UIImage. Как я могу вернуть UIIMage из этой функции? Я попытался сделать var retImg: UIImage в fucntion и присвоить retImg = image, но это тоже не сработало. – user1406716