Ios 无法调用';saveInBackgroundWithBlock';

Ios 无法调用';saveInBackgroundWithBlock';,ios,parse-platform,swift,Ios,Parse Platform,Swift,我已经在GitHub、parse.com和其他地方检查了无数次语法,但没有任何运气。问题是,当我为PFObject调用saveInBackgroundWithBlock时,出现以下错误: 无法使用类型为“((Bool,NSError)->Void)”的参数列表调用“saveInBackgroundWithBlock” 我使用的是Xcode 6.3 beta 2。所有框架都加载到项目中(包括螺栓和解析,但不是由Parse.com ParseCrashReporting&ParseUI提供),&甚至

我已经在GitHub、parse.com和其他地方检查了无数次语法,但没有任何运气。问题是,当我为PFObject调用saveInBackgroundWithBlock时,出现以下错误:

无法使用类型为“((Bool,NSError)->Void)”的参数列表调用“saveInBackgroundWithBlock”

我使用的是Xcode 6.3 beta 2。所有框架都加载到项目中(包括螺栓和解析,但不是由Parse.com ParseCrashReporting&ParseUI提供),
&甚至
都通过桥头引入

var score = PFObject(className: "score")
    score.setObject("Rob", forKey: "name")
    score.setObject(95, forKey: "scoreNumber")
    score.saveInBackgroundWithBlock {
        (success: Bool!, error: NSError) -> Void in
        if success == true {
            println("Score created with ID: \(score.objectId)")
        } else {
            println(error)
        }
    }

有什么想法吗?

假设
error
参数是隐式展开的可选参数,但不是
success
参数:

(success: Bool, error: NSError!) -> Void in
              ^               ^
但是,除非出于任何原因需要指定类型,否则我建议您将闭包简单地用作:

(success, error) in

不太容易出现类型声明错误。

该方法希望
成功
错误
变量与
一起设置成这样错误时的code>:

(success: Bool, error: NSError!)
              ^               ^
但是你已经设置了
到错误的变量:

(success: Bool!, error: NSError) 
正如你在这里看到的:


在Swift 1.2中.saveInBackgroundWithBlock的声明应如下所示:

Void saveInBackgroundWithBlock(block: PFBooleanResultBlock?(Bool, NSError?) -> Void)
所以应该是这样的:

score.saveInBackgroundWithBlock {
        (success: Bool, error: NSError?) -> Void in

谢谢你,亲爱的先生,你为我指明了正确的方向!然而,你的建议并不完全正确,请看下面我的答案。唯一的区别是隐式展开的可选项,你可以将其声明为普通可选项。你因此而出错了吗?是的,每当我更改这些内容时,我都会出错。然而,“(成功,错误)in”似乎在起作用,但这不是我想要的。感谢您为我指明了正确的方向,请参阅Xcode 7 beta 5显示错误:
无法使用类型为“((Bool,NSError?->Void)”的参数列表调用“SignupInBackgroundithBlock”