我正在使用此库https://github.com/Yalantis/Koloda
self.swipeView.dataSource = self
我已将dataSource设置为self,而Koloda需要返回UIView的datasource方法。我正在执行此任务的问题是在后台发生,该方法在获取图像之前返回并返回nil。 此外,Skeets ImageManger似乎只允许我在成功中回归Void。
我如何绕过这个?
func kolodaViewForCardAtIndex(koloda: KolodaView, index: UInt) -> UIView {
var imageView: UIView!
ImageManager.fetch("http://cdn.images.express.co.uk/img/dynamic/109/590x/364016_1.jpg",
progress: { (status: Double) -> Void in
println(status)
}, success: { (data: NSData) -> Void in
imageView = UIImageView(image: UIImage(data: data))
}) { (error: NSError) -> Void in
println(error)
}
return imageView
}
答案 0 :(得分:0)
您应该创建UIImageView并将其返回。 调用成功处理程序时,您可以为图像视图设置图像。
func kolodaViewForCardAtIndex(koloda: KolodaView, index: UInt) -> UIView {
var imageView = UIImageView(frame: CGRectZero)
ImageManager.fetch("http://cdn.images.express.co.uk/img/dynamic/109/590x/364016_1.jpg",
progress: { (status: Double) -> Void in
println(status)
}, success: { (data: NSData) -> Void in
imageView.image = UIImage(data: data)
}) { (error: NSError) -> Void in
println(error)
}
return imageView
}