Como faço para criar um segue que pode ser chamado de um botão que é criado programaticamente?

No Swift eu tenho um botão criado programaticamente usando:

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

Eu quero que quando o usuário clica no botão muda viewControllers. Aqui está o código para tabBarTableauClicked :

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

Mas obviamente não está funcionando porque não existe um identificador chamado “tableau”.

E eu não posso criar um segue usando Ctrl + clique no botão e arraste para o segundo viewController porque o botão é criado programaticamente e não no Storyboard.

Como posso criar um segue com um identificador programaticamente no Swift?

Aqui está como configurar um segue para que possa ser chamado programaticamente.

  • Controle o arrasto do ícone ViewController no primeiro controlador de exibição para o segundo controlador de exibição.
  • Clique na seta entre os dois controladores de visualização e, no Inspetor de Atributos à direita, dê um identificador a seguir ( tableau no seu caso).
  • Então você pode acionar o segue com performSegueWithIdentifier no seu código.

insira a descrição da imagem aqui

Você pode ler mais sobre como configurar e usar segues aqui.