В моем People.h я реализую NSCoding, в People.m:
@implementation People
@synthesize name;
- (void) encodeWithCoder:(NSCoder *)aCoder {
[aCoder encodeObject:name forKey:@"name"];
}
-(id) initWithCoder:(NSCoder *)aDecoder {
if (self = [super init]) {
self.name = [aDecoder decodeObjectForKey:@"name"];
}
return self;
}
@end
В моей функции viewDidLoad контроллера.
People *people1 = [[People alloc] init];
people1.name = @"kevin";
NSData *saveData = [NSKeyedArchiver archivedDataWithRootObject:people1];
NSString *saveDataString = [[NSString alloc] initWithData:saveData encoding:NSASCIIStringEncoding];
NSData *resultData = [saveDataString dataUsingEncoding:NSASCIIStringEncoding];
People *people2 = [NSKeyedUnarchiver unarchiveObjectWithData:resultData];
NSLog(@"%@",people2.name);
[super viewDidLoad];
Почему я получил ноль наконец этой функции.У меня были какие-то ошибки?
Спасибо!