Изменить размер представления NSCollectionViewItem - PullRequest
2 голосов
/ 27 октября 2009

Как программно установить размер представления 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.

1 Ответ

0 голосов
/ 27 октября 2009

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

http://github.com/sdegutis/SDListView

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

...