Domanda

Come posso impostare programmaticamente la dimensione di una vista di un NSCollectionViewItem?

Ho provato a farlo in una sottoclasse 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

Tuttavia questo codice non ha alcun effetto. Ho provato a sottoclassare il mio NSView che uso per NSCollectionViewItem e ho aggiunto setFrame: al metodo initWithCoder, ma quando lo faccio ottengo un arresto anomalo di EXC BAD ACCESS.

È stato utile?

Soluzione

Potresti dare un'occhiata a questa alternativa open source NSCollectionView di Steven Degutis che, per coincidenza, penso che sia stato appena pubblicato su GitHub oggi (l'ho notato oggi via Twitter):

http://github.com/sdegutis/SDListView

Sembra che ti permetta di avere oggetti con altezze diverse.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top