2017-01-13 29 views
0

我試圖用這個代碼用快速3對UIImage進行PFFile?

if let userPicture = object.valueForKey("Image")! as! PFFile { 
    userPicture.getDataInBackgroundWithBlock({ 
     (imageData: Data!, error: Error!) -> Void in 
     if (error == nil) { 
      let image = UIImage(data:imageData) 
      self.ImageArray.append(image) 
     } 
     }) 
} 

我得到這個錯誤

Cannot convert value of type '(Data!, Error!) -> Void' to expected argument type 'PFDataResultBlock?'

+0

它看起來對我來說,您寫出的完成塊與預期的Parse框架中的'PFDataResultBlock'不匹配。我沒有使用Parse,因爲他們關閉了它,但Parse文檔說了些什麼? 「PFDataResultBlock」的預期語法是什麼。我強迫拆包'Data'和'Error'似乎很奇怪。你確定它不應該是'(imageData:Data?,錯誤:錯誤?) - >在'無效'? – Pierce

+0

也檢查'PFDataResultBlock'的語法。它是否已更新?它可能需要使用'NSData'而不是'Data'和'NSError'而不是'Error'。只是一個想法。我說這是因爲,Parse像一年前一樣被關閉的唯一原因不是嗎? – Pierce

+0

我確信數據和錯誤,而不是NSData和NSError ,因爲我之前使用過它,並且當我使用NSError時出現錯誤。 解析已成爲開源,現在有一些替代使用解析像Back4app.com – Basil

回答

1

我解決我的問題

斯威夫特3:

if let userPicture = object.valueForKey("Image")! as! PFFile { 
userPicture.getDataInBackground({ (imageData: Data?, error: Error?) -> Void in 
let image = UIImage(data: imageData!) 
if image != nil { 
self.imageArray.append(image!) 
} 
}) 
}