viewDidLoad на самом деле вызывается каждый раз, когда происходит переход

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

Это совсем не то, что я вижу! Я составил простой тест, чтобы подчеркнуть это: https://github.com/imuz/ViewDidLoadTest

Кажется, что для переходов контроллера навигации и модальных представлений всегда вызывается viewDidLoad. Единственный раз, когда он не вызывается, это при переключении между вкладками.

Каждое объяснение viewDidLoad, которое я могу найти, противоречит этому:

А собственная документация Apple указывает, что представление выгружается только при нехватке памяти.

В настоящее время я выполняю инициализацию в viewDidLoad, предполагая, что она вызывается при каждом переходе segue.

Я что-то упустил здесь?

10
задан Community 23 May 2017 в 12:25
поделиться