2010-09-18 42 views
5

Dies wird ein Array ladenWann wird InitWithCoder aufgerufen?

- (id)initWithCoder:(NSCoder*) coder 
{ 
    self = [super initWithCoder: coder]; 
    if (self) { 
     myArray=[coder decodeObjectForKey:@"myArray"]; 
    } 
    return self; 
} 

Was ist der Code, der diese Funktion aufrufen wird, so dass das Array geladen werden kann?

+1

Nicht, dass Sie das Array beibehalten müssen, um Besitz zu übernehmen. –

Antwort

1

Wie DarkDust sagte, wird es aufgerufen, wenn ein NSUnarchiver oder ein NSKeyedUnarchiver verwendet wird. Dies ist jedoch nicht unbedingt der Fall. Man könnte tatsächlich einen benutzerdefinierten NSCoder und einen entsprechenden NSDecoder implementieren. zum Codieren/Decodieren von YAML usw.

Der häufigste Anwendungsfall ist das Laden von NIB-Dateien, da diese Inhalte archiviert werden.

Verwandte Themen