gpt4 book ai didi

swift - 在 getDataInBackgroundWith Block 之后运行函数

转载 作者:行者123 更新时间:2023-11-30 10:21:09 24 4
gpt4 key购买 nike

所有,我在 swift 中运行这个函数来获取(UImages)数组中的图像

func getImageData(objects: [PFObject]) {
for object in objects {
let thumbNail = object["StaffPic"] as PFFile

thumbNail.getDataInBackgroundWithBlock({
(imageData: NSData!, error: NSError!) -> Void in
if (error == nil) {
let image = UIImage(data:imageData)
println(image)
self.logoImages.append(image)

执行此函数后,我可以使用什么东西在主线程上运行函数吗? 我创建了一个测试函数:

func displayImages()
{
if self.logoImages.isEmpty
{
println("Logos are empty")
}
else
{
println(self.logoImages.count)
}
}

但这始终是 - Logos 是空的,因为它在 getDataInBackgroundBlock 完成之前运行它。任何帮助都会很棒。

如果我添加这个:

  func getImageData(objects: [PFObject]) {
for object in objects {
let thumbNail = object["StaffPic"] as PFFile

thumbNail.getDataInBackgroundWithBlock({
(imageData: NSData!, error: NSError!) -> Void in
if (error == nil) {
let image = UIImage(data:imageData)
println(image)
self.logoImages.append(image)

}


}, progressBlock: {
(percentDone: Int) -> Void in

})

所以我在函数末尾添加了progressBlock。它无法识别progressBlock..

最佳答案

我已经修复了这个问题

  }, progressBlock: {(percentDone: CInt) -> Void in

})

使用 CInt 而不是 Int

关于swift - 在 getDataInBackgroundWith Block 之后运行函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26464930/

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