7

Sto utilizzando UICollectionView con Storyboard e sto provando a sottoclassi UICollectionViewFlowLayout ma sembra non funzionare.Come sottoclasse UICollectionViewFlowLayout con Storyboard

ho creato la sottoclasse CollectionViewFlowLayout:

#import "CollectionViewFlowLayout.h" 

@implementation CollectionViewFlowLayout 

-(id)init 
{ 
    NSLog(@"Init of CollectionViewFlowLayout"); 

    if (!(self = [super init])) return nil; 
    self.itemSize = CGSizeMake(250, 250); 
    return self; 
} 

@end 

E nel ispettore identità del Storyboard ho cambiato la classe per il layout di flusso:

Identity Inspector for Storyboard

Ma quando salvo/build/eseguire, itemSize non è impostato su 250 e il mio NSLog non viene emesso.

Ho visto in examples such as this che è possibile impostare il layout nel controller collectionView, ma ho assunto che non fosse necessario se lo si imposta nello storyboard.

risposta

11

Gli oggetti caricati dallo storyboard utilizzano initWithCoder:, non init. Sposta il tuo codice di configurazione, oppure utilizza un metodo comune chiamato da ciascun inizializzatore.