Типичная цепочка: loadView → viewDidLoad → viewWillAppear → viewWillLayoutSubviews → viewDidLayoutSubviews → viewDidAppear; при уходе — viewWillDisappear → viewDidDisappear; затем deinit.
Разбор
- viewDidLoad вызывается один раз после загрузки view.
- Appear/Disappear могут вызываться многократно при навигации.
- Layout-колбэки срабатывают при изменении размеров и constraints.
- Исчезновение ≠ deinit: VC может жить в back-стеке navigation.
Итог
Жизненный цикл разделяет загрузку view, видимость и layout.