Звучит так, как будто вы вообще не хотите менять представления, но измените модель, которую вы загрузили в представления.
Возможно, самый простой способ - дать контроллеру окна свойство, с помощью которого представления могут обращаться к другому контроллеру, которому принадлежит часть модели (один такой контроллер для каждого элемента в меню). Затем вы просто переключаете этот контроллер.
В установщике этого свойства вам может потребоваться отправлять сообщения, например reloadData
, на некоторые из представлений, в зависимости от того, какие это представления. Представления, которые наблюдают за изменениями с использованием Bindings или KVO, не будут нуждаться в этом.