2010-11-17 24 views

Respuesta

4

Se supone que debe utilizar el método initWithCoder: cuando trabaja con objetos que se han archivado. Por ejemplo, cuando usa específicamente NSKeyedUnarchiver para crear estos objetos archivados o cuando necesita agregar un código de inicialización personalizado a los objetos que provienen de un archivo xib.

+1

la razón que pido es porque me he creado una subclase de UIScrollView, me gustaría colocar su posición en el xib y tomar esa información y utilizarla para configurar arriba de la subclase, ¿usaría initWithCoder: para algo así? – cgossain

9

Sí, si utiliza una clase personalizada en IB, entonces esos objetos se crean instancias con el método initWithCode:. Así, en su clase que pudiera anular:

-(id) initWithCoder:(NSCoder*)aDecoder { 
    if (! (self = [super initWithCoder:aDecoder])) 
     return nil; 

    // object has been created from IB... do initialization stuff here 

    return self; 
} 
Cuestiones relacionadas