@alex_643

Почему не работает передача данных между VC в обратном направлении при нажатии на Bar button item?

Доброго времени суток! Есть два VC со второго нужно передать данные, переход на второй осуществляется кнопкой на navigation bar. Но если кнопка на баре то передача данных перестаёт работать. Как это исправить?
1 VC
import UIKit

class FitstVC: UIViewController {
    @IBOutlet var textLabel: UILabel!
    override func viewDidLoad() {
        super.viewDidLoad()
    }
    
    
    @IBAction func saveData(_ sender: UIStoryboardSegue) {
        if let sourceViewController = (sender as AnyObject).source as? SecondVC {
            textLabel.text = sourceViewController.text
        }
    }
}

2 VC
import UIKit

class SecondVC: UIViewController {
    var text = ""
    @IBOutlet var textLabel: UILabel!
    override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
        text = "code"
    }
    override func viewDidLoad() {
        super.viewDidLoad()

    }
}

5f12efe155dca772979096.png
  • Вопрос задан
  • 42 просмотра
Решения вопроса 1
ivanvorobei
@ivanvorobei
iOS разработчик, канал https://t.me/sparrowcode
Что у вас вызывает экшен? Если кнопка назад - метод не вызывается.

Во втором контроллере нет передачи данных на первый контроллер совсем.

Для вашей задачи нужно использовать делегаты.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы