使用swift登录facebook后,Segue不会触发

时间:2017-04-12 19:33:22

标签: ios iphone swift facebook

所以我设法将其设置为整个登录系统。登录后它会关闭浏览器,但不会前进到下一个viewController。

这是我的AppDelegate.swift:

import UIKit
import CoreData

@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {

var window: UIWindow?


public func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey : Any]? = nil) -> Bool {
    // Override point for customization after application launch.
    return FBSDKApplicationDelegate.sharedInstance().application(application, didFinishLaunchingWithOptions: launchOptions)
}

public func application(_ app: UIApplication, open url: URL, options: [UIApplicationOpenURLOptionsKey : Any] = [:]) -> Bool {

    return FBSDKApplicationDelegate.sharedInstance().application(
        app,
        open: url as URL!,
        sourceApplication: options[UIApplicationOpenURLOptionsKey.sourceApplication] as! String,
        annotation: options[UIApplicationOpenURLOptionsKey.annotation]
    )
}

public func application(_ application: UIApplication, open url: URL, sourceApplication: String?, annotation: Any) -> Bool {

    return FBSDKApplicationDelegate.sharedInstance().application(
        application,
        open: url as URL!,
        sourceApplication: sourceApplication,
        annotation: annotation)
}
}

这是我的ViewController.swift:

import UIKit
import FBSDKCoreKit
import FBSDKLoginKit

class ViewController: UIViewController, FBSDKLoginButtonDelegate {

var fbLoginSuccess = false

override func viewDidLoad() {
    if (FBSDKAccessToken.current() != nil && fbLoginSuccess == true)
    {
        print("Logged In...")
    } else {
        print("Not Logged In...")
    }

    let loginButton = FBSDKLoginButton()
    loginButton.readPermissions = ["public_profile", "email"]
    loginButton.center =   self.view.center

    loginButton.delegate = self

    self.view.addSubview(loginButton)
}

override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
    // Dispose of any resources that can be recreated.
}


// Facebook Login.

func loginButton(_ loginButton: FBSDKLoginButton!, didCompleteWith result: FBSDKLoginManagerLoginResult!, error: Error!) {

    if error != nil
    {
        print(error)
    } else if result.isCancelled {
        // Handle
    } else {
        fbLoginSuccess = true
        print("User logged in...")
        self.performSegue(withIdentifier: "showNew", sender: self)
    }

}

func loginButtonDidLogOut(_ loginButton: FBSDKLoginButton!) {
    print("User logged out...")
}

}

我有一个故事板标识符“showNew'我无法弄清楚它为什么不会触发。

0 个答案:

没有答案