2017-02-22 51 views
0

我正在添加谷歌登录到我的Xcode项目。我正在设置一个错误配置器,以便登录可以正常工作,但是当我尝试将错误定义为NSError时,它会一直给我提供错误。我究竟做错了什么?Swift 3 NSError期待以后的呼叫类型?

class logInController: UIViewController, GIDSignInUIDelegate { 

    func CGRectMake(_ x: CGFloat, _ y: CGFloat, _ width: CGFloat, _ height: CGFloat) -> CGRect { 
     return CGRect(x: x, y: y, width: width, height: height) 
    } 

    override func viewDidLoad(){ 
     super.viewDidLoad() 

     var error = NSError? 
     GGLContext.sharedInstance().configureWithError(&error) 

     if error != nil { 
      print(error) 
      return 
     } 

     GIDSignIn.sharedInstance().uiDelegate = self 

     let signInButton = GIDSignInButton(frame: CGRectMake(0, 0, 100, 50)) 
     signInButton.center = view.center 
     view.addSubview(signInButton) 
    }  
} 

Xcode中说,"expected member name or constructor call type after name",但是当我添加类似域或USERINFO它告诉我,"argument labels [] do not match any available overloads"

+1

'VAR误差:NSError' – sCha

回答

0

无论您声明型与构造

var error = NSError(domain:... 

,或者作为选购指针

var error : NSError? 

要使用变量作为inout p参数你必须使用后者。

PS:习惯了斯威夫特3更改,如CGRect传递所有的参数标签...

+0

和'尝试catch'。 –