web-dev-qa-db-fra.com

Comment créer une séquence qui peut être appelée à partir d'un bouton créé par programme?

Dans Swift J'ai un bouton créé par programmation en utilisant:

var button = UIBarButtonItem(title: "Tableau", style: .Plain, target: self, action: "tabBarTableauClicked")

Je veux que lorsque l'utilisateur clique sur le bouton, il change viewControllers. Voici le code pour tabBarTableauClicked:

func tabBarTableauClicked(){
    performSegueWithIdentifier("tableau", sender: self)
}

Mais cela ne fonctionne évidemment pas car il n'y a pas de séquence avec un identifiant appelé "tableau".

Et je ne peux pas créer un enchaînement en utilisant Ctrl + cliquez sur le bouton et faites-le glisser vers le deuxième viewController car le bouton est créé par programme et non dans le Storyboard.

Comment puis-je créer une séquence avec un identifiant par programme dans Swift?

23
Clément Bisaillon

Voici comment configurer une séquence pour qu'elle puisse être appelée par programme.

  • Faites glisser la commande de l'icône ViewController du premier contrôleur de vue vers le deuxième contrôleur de vue.
  • Cliquez sur la flèche de transition entre les deux contrôleurs de vue et dans l'inspecteur d'attributs à droite, donnez à la séquence un identifiant ( tableau dans votre cas).
  • Ensuite, vous pouvez déclencher la séquence avec performSegueWithIdentifier dans votre code.

enter image description here

Vous pouvez en savoir plus sur la configuration et l'utilisation des séquences ici.

84
vacawama