То, что я делаю (иногда), настроено enum
, которое определяет тип контроллера представления.
Например, у вас может быть два типа: тип Edit
и тип Add
(«новый»).
Тип Add
реализован через модальный контроллер вида, а тип Edit
помещается в существующий стек навигации.
В методе -viewDidLoad:
контроллера представления я просто создаю дерево switch/case
, которое устанавливает заголовок и другие характеристики внешнего вида в зависимости от перечисления типов, указанного выше.
Приятно то, что легко добавить новый тип. Недостатком является то, что условное дерево для обработки этого перечисления может быстро усложниться, в зависимости от того, насколько различны типы.
Но дерево switch/case
значительно облегчает управление.
Итак, это зависит от того, что вы пытаетесь сделать с двумя типами. Но это определенно выполнимо.