Есть ли способ иметь различные представления в NSCollectionView?

Мне нужно что-то похожее на то, как в iWork есть экран выбора шаблонов для страниц, когда вы можете выбирать разные шаблоны, и каждое представление содержит различную информацию, имеет разный размер и т. Д.

Я попытался создать подкласс NSCollectionView и определить, какое представление отображать, с помощью метода newItemForRepresentedObject (в отличие от использования ItemPrototype View Interface Builder), но он по какой-то причине неправильно позиционирует представления и не отображает правильное количество представлений для количество предметов присутствует. Вот мой код Я надеялся, что у кого-то может быть лучший способ сделать это или пример того, как это делается.

personView и companyView - это свойства в подклассе NSCollectionView, которые являются IBOutlets для представлений в IB.

-(NSCollectionViewItem *)newItemForRepresentedObject:(id)object{
NSCollectionViewItem *collectionViewItem = [[NSCollectionViewItem alloc] init];

 [collectionViewItem setRepresentedObject:object];

 if([[object valueForKey:@"company"] boolValue] == YES){
     NSView *view = [companyView retain];
     [collectionViewItem setView:companyView];
 }else{
     [collectionViewItem setView:personalView];
 }

return collectionViewItem;

}

Ответы на вопрос(1)

Ваш ответ на вопрос