2016-01-03 74 views
2

我正在像解析应用叽叽喳喳,使用SWIFT 2一个Xcode 7.2我怎样才能解决这个错误使用Parse

但我不断收到此错误

无法将类型的价值“ (PFUser !, NSError!) - > Void'到期望的参数类型'PFUserResultBlock?'

当我使用

PFUser.logInWithUsernameInBackground 

命令。

我确切的代码如下:“?”

PFUser.logInWithUsernameInBackground(usernameTextfield.text!, password: passwordTextField.text!){ 
       (user:PFUser!, error:NSError!)->Void in 
       if ((user) != nil){ 

        print("Login sucessful!") 

      } 
      else { 

       print("Login failed") 


       } 
      } 
     })) 

    } 

,当我尝试带走了感叹号和/或用问号代替他们,我只是有这个错误

必须遵循的一个电话,成员查找,或下标

我是新来的迅速和Xcode的,所以请不要把我当成白痴,我只是新的快捷,仅此而已。

回答

1

您的关闭应该有类型:(PFUser?, NSError?) -> Void而不是(PFUser!, NSError!) -> Void。替换!与?在闭包中的参数类型中。

+0

谢谢你的答案,它的工作! – DALabs

0

由于雨燕3.0的,请尝试更换:

(user:PFUser!, error:NSError!)->Void in

(user:PFUser?, error:Error?)->Void in

首先,如果它在所有工作,我不会建议使用!,因为你”如果您通常访问usererror并且它们是nil(其中一个总是!),则会崩溃。其次,虽然解析主要写在obj-c,其中使用NSError,NSError似乎从Swift 3导入为Error

相关问题