J'essaie actuellement d'obtenir une instruction conditionnelle pour utiliser performSegue(withIdentifier:sender:)
. Actuellement, je ne reçois aucune erreur mais le segue n'est pas effectué. Le projet utilise le SDK Facebooks si loginButton()
est appelé lorsque l'utilisateur se connecte à (fonctionne cette partie, les impressions de la console « utilisateur est connecté » qui confirme que SDK si fonctionne correctement)Segue n'étant pas exécuté dans une instruction conditionnelle
L'identifiant est correctement orthographié dans le story-board
class LoginViewController: UIViewController, FBSDKLoginButtonDelegate {
override func viewDidLoad() {
super.viewDidLoad()
let loginButton = FBSDKLoginButton()
loginButton.frame = CGRect(x: 15, y: view.frame.maxY - 50, width: view.frame.width - 32, height: 32)
view.addSubview(loginButton)
loginButton.delegate = self
}
func loginButton(_ loginButton: FBSDKLoginButton!, didCompleteWith result: FBSDKLoginManagerLoginResult!, error: Error!)
{
if error != nil
{
print(error)
return
}
else
{
print("user is logged in")
}
performSegue(withIdentifier: "postToView", sender: self)
}
func loginButtonDidLogOut(_ loginButton: FBSDKLoginButton!)
{
print("logged out")
}
}
C'est ce que le story-board ressemble
Comment puis-je obtenir pour effectuer la Segue une fois que la condition est vraie?
Ajoutez une instruction d'impression - première ligne - dans loginButton(). Vous ne montrez pas comment loginButton() est appelé. Je soupçonne que c'est le problème. –
@PriceRingo oublié de mentionner, c'est en utilisant le Facebook SDK donc il a appelé loginButton une fois que l'utilisateur est connecté – hpcsolo
Pouvez-vous imprimer votre story-board? –