NSCoder和自定义类型

SK9*_*SK9 7 types nscoder

你如何使用NSCoder编码和解码自定义类型?

例如,如何将NSCoder与" STATE" 实例一起使用,其中:

typedef enum { ON, OFF } STATE;
Run Code Online (Sandbox Code Playgroud)

Ush*_*hox 13

您可以将它们视为整数,因为它们是隐式赋值的整数值:

- (void) encodeWithCoder: (NSCoder *)coder {
  ...
  [coder encodeInt:type forKey:@"state"];
}

- (id) initWithCoder: (NSCoder *)coder {
  ...
  state = [coder decodeIntForKey:@"state"];
}
Run Code Online (Sandbox Code Playgroud)