Как Apple заставляет свои контроллеры содержать другие контроллеры?

Документация Apple дает следующее предупреждение относительно использования контроллеров представления для управления частью экрана.

Примечание: не следует использовать представление контроллеры для управления представлениями, которые заполняют только часть их окна, то есть только часть площади, определяемой прямоугольник содержимого приложения. если ты хотите иметь интерфейс, состоящий из несколько меньших представлений, вставьте их все в едином корневом представлении и управлять этим view с вашим контроллером представления.

Странно то, что Apple нарушает этот совет. UITabBarController , UINavigationController , UISplitViewController - все противоречат этому совету. На форумах Apple обсуждается, что может пойти не так, если вы проигнорируете этот совет.

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

Итак, учитывая вопрос, какой метод Apple использует для своих контроллеров?

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