Ответ 1
Если вы наследуете класс, поддерживающий кодирование, обычно рекомендуется использовать [super encodeWithCoder:]
в вашем методе encodeWithCoder:
, так как [super initWithCoder:]
должен использоваться в методе initWithCoder:
.
Документация: Ссылка на протокол NSCoding
Ссылка: http://www.cocoadev.com/index.pl?NSCoder
если класс наследуется от класса, который соответствует (NSObject не соответствует), то вы должны включить метод [encodeWithCoder:].
// <NSCoding> protocol methods
-(void)encodeWithCoder:(NSCoder*)coder
{
[super encodeWithCoder:coder];
/*
[coder encodeObject: theNSStringInstanceVariable];
[coder encodeObject: theNSDictionaryInstanceVariable];
[coder encodeValueOfObjCType:@encode(BOOL) at:&theBooleanInstanceVariable];
[coder encodeValueOfObjCType:@encode(float) at:&theFloatInstanceVariable];
*/
}