This will save an array (I think).
- (void)encodeWithCoder:(NSCoder *)encoder {
[encoder encodeObject:myArray forKey:@"myArray"];
}
Do I have to directly call this method when I want to save an array or do I have to do something else?
This will save an array (I think).
- (void)encodeWithCoder:(NSCoder *)encoder {
[encoder encodeObject:myArray forKey:@"myArray"];
}
Do I have to directly call this method when I want to save an array or do I have to do something else?
You don’t call this method directly. It’s called by a
NSCoder
subclass if it needs to serialize that object. If you want to encode an object graph use the class methodsarchivedDataWithRootObject:
orarchiveRootObject:toFile:
ofNSKeyedArchiver
. This in turn will call theencodeWithCoder:
method of your objects. Also note that every object in your array has to implement theNSCoding
protocol.