Я сам помещаю контроллеры представления в контроллеры представления, и я видел гораздо лучших программистов, чем я, делающих то же самое.(См. Роб Нейпир «Программирование на iOS 5 - раздвигая границы». Он часто упоминает об этом.) Если у вас не более одного контроллера представления, непосредственно управляющего одними и теми же представлениями и подпредставлениями, вы должны с этим согласиться.
С тех пор, как Джона Уильямс написала эту статью, я думаю, что iOS 5 формализовала использование иерархии контроллеров представления с настраиваемыми контроллерами представления контента.Вы могли бы считать, что ваш mapVC является настраиваемым контроллером представления контента, и реализует onlineMapVC и offlineMapVC в качестве дочерних контроллеров представления.
(ссылки на документацию Apple, как правило, часто меняются, поэтому Google "Custom Content View Controller" для документации.)
Если вы можете дать больше контекста тому, что вы имеете в виду, переключаясь между двумяпросмотр контроллеров ", который помог бы ответить на ваш вопрос.Как правило, у меня одновременно работает несколько контроллеров представления.Я не переключаюсь между ними.(Я использую контроллеры навигации и панели вкладок в том же приложении, но я предполагаю, что вы знаете о том, как они работают, и задаете другой вопрос. Просто не ясно, каковы особенности в вашем случае.)