swift - perform - ¿Cómo creo un segue que se puede invocar desde un botón que se crea mediante programación?
unwind segue programmatically swift 4 (1)
En Swift tengo un botón creado programáticamente utilizando:
var button = UIBarButtonItem(title: "Tableau", style: .Plain, target: self, action: "tabBarTableauClicked")
Quiero que cuando el usuario haga clic en el botón, cambie viewControllers. Aquí está el código para tabBarTableauClicked
:
func tabBarTableauClicked(){
performSegueWithIdentifier("tableau", sender: self)
}
Pero obviamente no funciona porque no hay segue con un identificador llamado "tableau".
Y no puedo crear un segue usando Ctrl + clic en el botón y arrastrar al segundo viewController porque el botón se crea programáticamente y no en el Storyboard.
¿Cómo puedo crear un segue con un identificador programáticamente en Swift?
Aquí se explica cómo configurar un segue para que pueda llamarse programáticamente.
- Controla el arrastre desde el ícono ViewController en el primer controlador de vista al segundo controlador de vista.
- Haga clic en la flecha de segue entre los dos controladores de vista, y en el Inspector de Atributos a la derecha, déle a la segue un Identificador ( cuadro en su caso).
- Luego puede activar la performSegueWithIdentifier con performSegueWithIdentifier en su código.
Puede leer más sobre la configuración y el uso de segues here.