我正在使用这个库https://github.com/Yalantis/Koloda
self.swipeView.dataSource = self我已经将dataSource设置为self,并且Koloda需要返回UIView的数据源方法。我遇到的问题是,这个任务是在后台发生的,方法在图像被获取之前返回,并返回nil。此外,Skeets ImageManger似乎只允许我在成功中返回空虚。
我该如何解决这个问题呢?
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
}发布于 2015-08-05 04:10:12
您应该创建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
}https://stackoverflow.com/questions/31699081
复制相似问题