2015-04-01 33 views
3

因此,我一直在使用Facebook及其SDK的快速iOS應用程序。我登錄按鈕正常工作,它可以正確保存信息,但是我無法在成功登錄/註銷時運行代碼。專用功能:Swift iOS App Facebook的SDK 4.0在登錄/註銷方法不執行

func loginButton(loginButton: FBSDKLoginButton!, didCompleteWithResult result: FBSDKLoginManagerLoginResult!, error: NSError!) { 
    println("User Logged In") 
    backButton.hidden = false 
    loginText.text = "Thanks for Logging In" 
} 

func loginButtonDidLogOut(loginButton: FBSDKLoginButton!) { 
    println("User Logged Out") 
    loginText.text = "Please Login" 
    backButton.hidden = true 
} 

根本就不當用戶登錄並進行運行。 任何幫助將不勝感激,如果需要我可以上傳其餘的代碼。我在兩個不同的視圖控制器中遇到了問題,而不僅僅是這兩個視圖控制器都有自己的類。

回答

5

將委託分配給您的FBSDKLoginButton。

class ViewController: UIViewController,FBSDKLoginButtonDelegate { 

    override func viewDidLoad() { 
     super.viewDidLoad() 

     var loginButton = FBSDKLoginButton() 
     loginButton.delegate = self 
     loginButton.frame = CGRectMake(100, 100, 150, 40) 
     self.view.addSubview(loginButton) 
} 

一旦用戶登錄,將調用以下委託方法。

func loginButton(loginButton: FBSDKLoginButton!, didCompleteWithResult result: FBSDKLoginManagerLoginResult!, error: NSError!) { 

     println("User Logged In") 
    } 

一旦用戶註銷,將調用以下委託方法。

func loginButtonDidLogOut(loginButton: FBSDKLoginButton!) { 

    println("User Logged Out") 
}