Предполагая, что вы используете какой-то контроллер в IB (NSArrayController
или NSObjectController
) для управления вашими сущностями, вы можете создать розетку для этого контроллера в вашем контроллере представления.
Затем в методе awakeFromNib
вы можете сделать:
switch (myChoosenEntity) {
case 1:
[[self myEntityController] setEntityName: @"MyFirstEntity"];
break;
case 2:
[[self myEntityController] setEntityName: @"MySecondEntity"];
break;
default:
break
}
Тогда контроллер сущностей будет настроен на использование сущности по вашему выбору.Этот подход все еще позволит вам делать привязки в IB.Единственным недостатком может быть то, что IB не может показать вам возможные атрибуты для привязки, поскольку фактическая сущность определяется только во время выполнения.