J'ai une application à vue unique qui se connecte pour analyser et vérifie les informations de connexion de l'utilisateur et met à jour un UILabel en disant "Oui, vous vous êtes connecté avec succès" - Maintenant, je veux qu'il navigue vers une nouvelle vue (qui sera la partie principale de l'application).
J'ai fait glisser un nouveau contrôleur de vue sur le storyboard et Ctrl-faites glisser le bouton et l'ai lié au nouveau contrôleur avec afficher. Cependant, au moment où je charge l'application et clique sur le bouton, elle passe directement à la nouvelle vue. J'en ai besoin pour y aller uniquement si la bonne partie de l'instruction if-else est déclenchée.
Est-ce que ça a du sens? Merci pour toute aide. très appréciée.
ÉDITER
L'instruction if est:
if usrEntered != "" && pwdEntered != "" {
PFUser.logInWithUsernameInBackground(usrEntered, password:pwdEntered) {
(user: PFUser!, error: NSError!) -> Void in
if user != nil {
self.messageLabel.text = "You have logged in";
} else {
self.messageLabel.text = "You are not registered";
}
}
}
et son situé dans le fichier ViewController.Swift
Tout d'abord, comme je l'explique dans cette réponse , vous devez faire glisser la séquence depuis le UIViewController global vers le prochain UIViewController, c'est-à-dire que vous ne devez pas connecter spécifiquement le UIButton (ou tout IBOutlet d'ailleurs) au UIViewController suivant si la transition est conditionnelle:
Vous devrez également attribuer un identifiant à la séquence. Pour ce faire, vous pouvez sélectionner la flèche de transition puis saisir un identifiant dans le panneau de droite:
Ensuite, pour effectuer la séquence réelle, utilisez la fonction performSegueWithIdentifier
dans votre conditionnel, comme ceci:
if user != nil {
self.messageLabel.text = "You have logged in";
self.performSegueWithIdentifier("segueIdentifier", sender: self)
} else {
self.messageLabel.text = "You are not registered";
}
où "segueIdentifier" est l'identifiant que vous avez attribué à votre séquence dans le storyboard.