Насколько я понимаю, этот блок кода не работает, но проблема не в коде, это способ отправки данных. В разработке для iOS существует много способов отправки данных. В вашем случае вам нужно использовать метод prepareForSegue для отправки данных в новый класс, не обязательно использовать делегатов.
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if (segue.identifier == "ThankYouPage") {
let vc = segue.destination as! ThankYouPage
vc.message = "Message that you want to send"
}
}
И вам нужно реализовать свою ThankYouPage как:
class ThankYouPage: UIViewController {
@IBOutlet weak var numbersView: UILabel!
var message = ""
override func viewDidLoad() {
super.viewDidLoad()
numbersView.text = message
}
}
В дополнение к этому, вы можете использовать метод didSet для распечатки сообщения на этикетке вместо прямой печати в методе viewDidLoad. Просто:
class ThankYouPage: UIViewController {
@IBOutlet weak var numbersView: UILabel!
var message: String?{
didSet{
numbersView.text = message
}
}
override func viewDidLoad() {
super.viewDidLoad()
}
}
Надеюсь, это поможет вам.