Back to questions
Junior — Middle
67
Каким образом вставить один ViewController внутрь другого в приложении iOS?
Answer from AI
sobes.tech AI
Чтобы вставить один UIViewController внутрь другого в iOS, используют механизм дочерних контроллеров (child view controllers). Это позволяет организовать сложные интерфейсы из нескольких контроллеров.
Пример:
let childVC = ChildViewController()
// Добавляем дочерний контроллер
addChild(childVC)
// Добавляем его view во view иерархию
view.addSubview(childVC.view)
childVC.view.frame = view.bounds // или задаём нужный фрейм
childVC.view.autoresizingMask = [.flexibleWidth, .flexibleHeight]
// Сообщаем дочернему контроллеру, что он добавлен
childVC.didMove(toParent: self)
Чтобы удалить дочерний контроллер:
childVC.willMove(toParent: nil)
childVC.view.removeFromSuperview()
childVC.removeFromParent()
Такой подход позволяет правильно управлять жизненным циклом контроллеров и их иерархией.