В раскадровке вы сможете создать переход, удерживая клавишу управления, затем щелкая ячейку и перетаскивая ее в контроллер представления назначения.
В вашем методе didSelectRowAt
вы не можете нужно что-нибудь сделать. Я имею в виду, что вам не нужно звонить performSegue
. Все это будет происходить изнутри благодаря последовательности, которую вы определили в раскадровке.
В вашем методе prepare
вам нужно будет сделать что-то вроде этого:
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
guard segue.identifier == "showGuest" else { return }
guard let cell = sender as? UITableViewCell else { return }
guard let indexPath = tableView.indexPath(for: cell) else { return }
guard let dest = segue.destination as? GuestViewController else { return }
dest.data = data[indexPath.row]
}