У меня возникли проблемы с реализацией именно того, почему я получаю сообщение об ошибке, указанное в заголовке вопроса при попытке реализовать индикатор выполнения на моем блоке.Swift: Дополнительный аргумент «progressblock» при вызове
func uploadImage(imageData: NSData!) {
let imageFile = PFFile(name: "\(PFUser.currentUser().username)'s Avatar", data: imageData)
// Show the HUD to prompt user of upload
hud = MBProgressHUD.showHUDAddedTo(self.view, animated: true)
hud.mode = MBProgressHUDModeDeterminateHorizontalBar
hud.labelText = "Changing Image..."
// Upload the image
imageFile.saveInBackgroundWithBlock({ (succeeded: Bool, error: NSError!) -> Void in
// Check there was no error, begin handling the file upload
// trimmed out un-necessary code
}, progressBlock: { (amountDone: Int32) -> Void in
self.hud.progress = amountDone/100 as Float
})
}
Если удалить строку self.hud.progress = amountDone/100 as Float
все работает, как я ожидал, но положить что-нибудь в progressBlock
вызывает мое приложение к сбою.
Я следую за Parse tutorial for uploading images, разница только в том, что я работаю с Swift, поэтому мне нужно преобразовать из Objective-C, однако я не понимаю, почему это сильно изменило бы синтаксис для построения второго блок.
Вы совершенно правы, я думал, что 'в Float' будет делать то же самое с моим выражением - мой плохой ... спасибо Kampai – Alex