Вы не предоставляете дополнительную информацию, которую я запрашивал, поэтому невозможно подробно ответить на ваш вопрос.Я предлагаю вам создать совершенно новый проект с двумя контроллерами представления.Соедините их в раскадровке таким же образом.Вы увидите, что то, что вы пытаетесь сделать, на самом деле должно работать нормально.Убедившись в этом, вы можете вернуться и посмотреть, в чем разница в проекте, с которым у вас возникли проблемы.
РЕДАКТИРОВАТЬ:
Хорошо, спасибо за снимок экрана.Похоже, вы пытаетесь использовать раскадровку в связи с родительским контроллером представления, как я и предполагал во втором комментарии.Это не легко, потому что раскадровка ничего не знает о потомках вашего родительского контроллера представления.Вы будете намного счастливее, если будете использовать несколько раскадровок или вообще не будете раскадровок.
Теперь мы подошли к проблеме использования родительского контроллера представления.Вы не спрашивали об этом, но это может быть в основе вашей проблемы. крайне важно , чтобы правильно управлять контроллерами дочерних представлений.Смотрите обсуждение в моей книге:
http://www.apeth.com/iOSBook/ch19.html#_container_view_controllers
Вы должны каждый раз исполнять этот сложный танец, иначе все пойдет не так:
Когда контроллер представления должен стать дочерним элементом вашего родительского контроллера представления:
- Вы вызываете addChildViewController: на своем родительском контроллере представления.Дочерний объект автоматически добавляется в массив childViewControllers родителя, который сохраняет его.
- Вы получаете представление дочернего контроллера представления в свой интерфейс, если это означает, что добавление дочернего контроллера представления означает.
- Вы отправляетеdidMoveToParentViewController: дочернему элементу с родительским контроллером представления в качестве аргумента.
Когда контроллер представления перестает быть дочерним элементом вашего родительского контроллера представления:
- Вы отправляете willMoveToParentViewController:дочернему элементу с аргументом nil.
- Вы удаляете представление дочернего контроллера представления из своего интерфейса, если это означает, что удаление дочернего контроллера представления означает.
- Вы отправляете removeFromParentViewController дочернему элементу.Дочерний объект автоматически удаляется из родительского массива childViewControllers, который его освобождает.
Наконец, когда вы делаете модальный переход, definesPresentationContext
в вашей родительской цепочке становится критически важным, так что модальное представление знает, какое представлениезаменить в интерфейсе.Этот загружаемый пример из моей книги демонстрирует необходимые различия:
https://github.com/mattneub/Programming-iOS-4-Book-Examples/tree/master/convertedToIOS5/p476containerController2