У меня есть 3 ViewController: ViewController A и ViewController B, а также контроллер C, который на самом деле является ContainerView, состоящим из двух UIView.
Как вы можете видеть на приведенном выше рисунке, ViewController C имеет четкий фон, так что «тестовая метка» может быть видна в UIViews обоих ViewController A и B.
Когда я прокручиваю от ViewController A, чтобы перейти к ViewController B, я хочу иметь возможность выполнять некоторую анимацию (исчезновение/исчезновение, перевод, изменение текста и т.д.). Допустим, я хочу изменить текст с «Тестовая метка» на «Некоторый новый текст», проблема в том, что как только я попаду в ViewController B, я получаю сообщение «Неожиданно найдено nil при распаковке необязательного значения». ошибка.
Почему я получаю ноль и как правильно изменить текст метки?
Этот код кажется логичным, но я не могу понять его правильно:
let containerViewController = ContainerViewController()
containerViewController.testLabel.text = "Some new text"
Я также пробовал:
let containerViewController = storyboard?.instantiateViewController(withIdentifier: "containerViewController") as! containerViewController
containerViewController.testLabel.text = "Some new text"
Нужно ли мне что-то добавлять в функцию переопределения ViewController A?