在
this tutorial之后,我设法使Facebook登录按钮工作.但是,它会自动从SDK中分配按钮图像,而且不能自定义(因为它没有在Storyboard上创建),所以我无法使用自己的按钮图像或文本.
我相信这部分代码(在ViewDidLoad中)是分配按钮:
let loginView : FBSDKLoginButton = FBSDKLoginButton() self.view.addSubview(loginView) loginView.center = self.view.center loginView.readPermissions = ["public_profile","email"] loginView.delegate = self
我需要做的是在Storyboard上创建一个@IBOutlet按钮并从那里进行自定义.我怎样才能做到这一点?
解决方法
使用自定义按钮和访问令牌登录.
迅速
@IBAction func btnFBLoginPressed(sender: AnyObject) { var fbLoginManager : FBSDKLoginManager = FBSDKLoginManager() fbLoginManager.logInWithReadPermissions(["email"],fromViewController: self,handler: { (result,error) -> Void in if (error == nil){ var fbloginresult : FBSDKLoginManagerLoginResult = result if(fbloginresult.grantedPermissions.contains("email")) { self.getFBUserData() fbLoginManager.logout() } } }) } func getFBUserData(){ if((FBSDKAccessToken.currentAccessToken()) != nil){ FBSDKGraphRequest(graPHPath: "me",parameters: ["fields": "id,name,first_name,last_name,picture.type(large),email"]).startWithCompletionHandler({ (connection,result,error) -> Void in if (error == nil){ println(result) } }) } }