В моем приложении более 20+ кнопок. Для этих кнопок, если я нажму два раза, он выполнит переход дважды и дважды откроет view-контроллер во всем приложении в swift iOS?
self.performSegue(withIdentifier: "toViewController", sender: nil)
Вы можете объявить свойство
var isSegueEnabled = true
Затем реализовать метод для контроля, должен ли быть выполнен переход
func shouldPerformSegue(withIdentifier identifier: String, sender: Any?) -> Bool { return isSegueEnabled }
В prepare(for segue установите для свойства false
prepare(for segue
false
isSegueEnabled = false
В какой-то момент после отклонения представленного контроллера установите isSegueEnabled обратно в true
isSegueEnabled
true
Вы можете прикрепить тег к каждой кнопке и определить массив сегментов
self.performSegue(withIdentifier:segues[sender.tag], sender: nil)
или просто сделать кнопку источником перехода, если вы не хотите переопределять prepareForSegue
prepareForSegue