2

Как я могу запрограммировать размер представления NSCollectionViewItem?Изменить размер изображения NSCollectionViewItem

Я попытался сделать это в подклассе NSCollectionView:

@implementation CustomCollectionView 

- (NSCollectionViewItem *)newItemForRepresentedObject:(id)object { 

    NSCollectionViewItem *newitem = [[self itemPrototype] copy]; 
    [newitem setRepresentedObject:object]; 
    NSView *itemview = [newitem view]; 
    [itemView setFrame:NSMakeRect([itemView frame].origin.x, [itemView frame].origin.y,   [itemView frame].size.width, 500)]; 
    return newitem; 
} 

@end 

Однако этот код не имеет никакого эффекта. Я попробовал подклассифицировать мой NSView, который я использую для NSCollectionViewItem, и добавив setFrame: к методу initWithCoder, но я получаю сообщение об ошибке EXC BAD ACCESS, когда я это делаю.

ответ

0

Вы можете оформить эту открытый исходный код NSCollectionView альтернативы от Стивена Degutis, который, по совпадению, я думаю, просто размещённый на GitHub сегодня (я заметил это сегодня через Twitter):

http://github.com/sdegutis/SDListView

Похоже, что позволяет имеют предметы с разной высотой.

+0

Это выглядит блестящим, спасибо вам большое. – indragie

+0

.. эта ссылка больше не работает (12/2011), но есть зеркало в https://github.com/arbales/SDListView – Jay