2014-10-17 2 views
0

이 코드 블록의 오류를 좁혔습니다. 선택 사항으로 뭔가를 정의해야하지만 어디에 있는지 잘 모르겠습니다.선택 사항 인 언 래핑 중에 예기치 않게 nil을 발견했습니다.

@IBAction func SignupWithFacebook(sender: AnyObject) { 
    var permissionsArray = ["user_about_me", "user_birthday", "email"] 
    PFFacebookUtils.logInWithPermissions(permissionsArray, block: { (user: PFUser?, error: NSError!) -> Void in 
     if (user == nil) { 
      let errormessage = error.userInfo!["error"] as NSString 
      var facebookLoginError = UIAlertController(title: "Error While Logging", message: "\(errormessage)", preferredStyle: .Alert) 
      var okButton = UIAlertAction(title: "OK", style: .Default, handler: nil) 
      facebookLoginError.addAction(okButton) 
      self.presentViewController(facebookLoginError, animated: true, completion: nil) 

     } 

    }) 

} 

모든 도움을 주시면 감사하겠습니다.

+0

오류가 발생한 라인은 무엇입니까? –

답변

0

사용자 코드는 사용자가 nil이면 오류가 있다고 가정합니다. 네가 그 보장을 할 수 있는지 나는 모른다. 대신 다음을 시도하십시오.

@IBAction func SignupWithFacebook(sender: AnyObject) { 
    let permissionsArray = ["user_about_me", "user_birthday", "email"] 
    PFFacebookUtils.logInWithPermissions(permissionsArray) { (user, error) -> Void in 
     if user == nil { 
      if let e = error { 
       let errormessage = e.userInfo!["error"] as NSString 
       let facebookLoginError = UIAlertController(title: "Error While Logging", message: "\(errormessage)", preferredStyle: .Alert) 
       let okButton = UIAlertAction(title: "OK", style: .Default, handler: nil) 
       facebookLoginError.addAction(okButton) 
       self.presentViewController(facebookLoginError, animated: true, completion: nil) 
      } 
     } 
    } 
} 
관련 문제