Я пробовал передавать данные назад из моего перехода к раскрутке несколькими способами. Похоже, что данные не отправляются или отправляются после viewDidLoad(), поэтому метка, которую я пытаюсь установить, не обновляется. Откат работает, и ниже я использую подготовку к переходу с некоторым успехом, чтобы изменить заголовок предыдущего контроллера представления на «новый заголовок», но последняя строка не устанавливает для nbaRotoHome.player «имя нового игрока».
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if segue.identifier == "BuyStatsTapPager" {
let nav = segue.destination as! UINavigationController
let buyStatsTapPager = nav.viewControllers[0] as! BuyStatsTabPager
buyStatsTapPager.selectedPlayerBuyStats = selectedPlayer
buyStatsTapPager.buyStatsRef = self
}
if segue.identifier == "unwindToViewController1" {
var viewControllers: [UIViewController] = mainNavigationController.viewControllers as [UIViewController];
if(viewControllers.count == 3){
viewControllers.remove(at: viewControllers.count-2)
mainNavigationController?.viewControllers = viewControllers
}
let enteredContestViewController = viewControllers[viewControllers.count-1]
enteredContestViewController.title = "new title"
self.presentingViewController?.dismiss(animated: true, completion: nil)
let nbaRotoHome = segue.destination as! NBARotoHome
nbaRotoHome.player = "new player name"
}
Вернувшись в мой предыдущий контроллер представления, у меня есть
@IBAction func prepareForUnwind(segue: UIStoryboardSegue) {
}
И после просмотра этого вопроса Передача данных с переходом на раскрутку я также попытался получить данные таким образом в предыдущем контроллере представления
@IBAction func prepareForUnwind(segue: UIStoryboardSegue) {
if let sourceViewController = segue as? BuyStats {
playerNameLabel.text = sourceViewController.playerName
}
}
Если мне нужно добавить больше деталей к тому, что я пытаюсь сделать, пожалуйста, спросите, и я отредактирую. Хотел задать вопрос, но затрудняюсь сформулировать.