一种选择是将视图控制器设置为FBSDKLoginButton
并实施loginButton:didCompleteWithResult:error: https://developers.facebook.com/docs/reference/ios/current/protocol/FBSDKLoginButtonDelegate方法,当使用按钮登录时调用该方法。
Swift
class ViewController: UIViewController, FBSDKLoginButtonDelegate {
@IBOutlet weak var loginButton: FBSDKLoginButton!
override func viewDidLoad() {
super.viewDidLoad()
self.loginButton.delegate = self
}
}
Obj-C
// ViewController.h
@interface ViewController : UIViewController <FBSDKLoginButtonDelegate>
@property (weak, nonatomic) IBOutlet FBSDKLoginButton *loginButton;
@end
// ViewController.m
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
self.loginButton.delegate = self;
}
然后,在loginButton:didCompleteWithResult:error:
方法你可以检查result
and error
,如果一切正常,请导航到另一个视图。
Swift
func loginButton(loginButton: FBSDKLoginButton!, didCompleteWithResult result: FBSDKLoginManagerLoginResult!, error: NSError!) {
if ((error) != nil) {
// Process error
}
else if result.isCancelled {
// Handle cancellations
}
else {
// Navigate to other view
}
}
Obj-C
// ViewController.m
@implementation ViewController
- (void)loginButton:(FBSDKLoginButton *)loginButton
didCompleteWithResult:(FBSDKLoginManagerLoginResult *)result
error:(NSError *)error {
if (error) {
// Process error
}
else if (result.isCancelled) {
// Handle cancellations
}
else {
// Navigate to other view
}
}
您可以找到有关如何使用 FB 登录的更多信息他们的文档 https://developers.facebook.com/docs/facebook-login/ios/v2.3#.