Задать вопрос
@pinapple

Объясните, зачем нужен этот метод?

Когда добавляю в качестве дочернего контроллера childController, то зачем мне в конце нужно выполнять метод didMoveToParentViewController:self? Вот часть кода
[self addChildViewController: childController];
[self.view insertSubview: childController.view atIndex:0];
[childController didMoveToParentViewController:self];
  • Вопрос задан
  • 709 просмотров
Подписаться 3 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    iOS-разработчик
    10 месяцев
    Далее
  • Нетология
    iOS-разработчик с нуля
    11 месяцев
    Далее
  • LearnQA
    Автоматизатор мобильных приложений
    9 недель
    Далее
Решения вопроса 1
Flanker_4
@Flanker_4
Этот метод сигнализирует дочернему ViewController о том, что его "transition" в родительский контейнер завершена.
Таким образом вы можете реагировать на окончание добавления вашего контроллера в иерархию. Сейчас, вроде как, этот метод ничего не делает у базового UIViewController'a. Тем не менее ВЫ ОБЯЗАНЫ вызвать его при реализации своего кастомного контейнера. Во-первых, никто не гарантирует, что в ios > 9 он таки не начнет что-то делать. Во-вторых, полно сторонних библиотек/подов, где в кастомных компонентах могут быть переопределены эти методы. И вот если вы их пихнете в свой кастомный контейнер и не вызовите didMoveToParentViewController - то будет неопределенное поведение
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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