Передача объекта из ячейки табличного представления в другой контроллер представления с помощью Segue - PullRequest
0 голосов
/ 05 мая 2019

У меня есть следующая часть моего кода, которую я пытаюсь отработать, чтобы перейти от контроллера табличного представления к контроллеру представления.

override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath){
   let donation = donations[indexPath.row]
   print(donation)
   self.performSegue(withIdentifier: "showDonationReviewForm", sender: Any?)
}

На вышеупомянутом, когда я печатаю donation, он правильно печатает объект и связанные с ним поля.Я знаю, что в какой-то момент мне нужно будет использовать override func prepare(for segue..., но я не знаю, как я передаю пожертвовавший объект следующему контроллеру.

1 Ответ

0 голосов
/ 05 мая 2019

Вы можете попробовать

performSegue(withIdentifier: "showDonationReviewForm", sender:donations[indexPath.row])

override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
    if segue.identifier == "showDonationReviewForm" {
        if let nextViewController = segue.destination as? NextViewController {
            nextViewController.toSend =  sender as! Donation 
        }
    }
}

class NextViewController :UIViewController {
   var toSend:Donation?
   ....
}

Предполагая, donations является массивом Donation модель

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...