:NSInteger 및 decodeInteger : forKey : 문제
- (void) encodeWithCoder: (NSCoder *) encoder {
[encoder encodeObject:self.exercises forKey:@"exercises"];
[encoder encodeObject:self.title forKey:@"title"];
[encoder encodeObject:self.description forKey:@"description"];
[encoder encodeInteger:self.idnum forKey:@"idnum"];
[encoder encodeInteger:self.rating forKey:@"rating"];
[encoder encodeInteger:self.frequency forKey:@"frequency"];
NSLog(@"Encoding!");
}
- (id) initWithCoder: (NSCoder *) decoder {
self.exercises = [[decoder decodeObjectForKey:@"exercises"] retain];
self.title = [[decoder decodeObjectForKey:@"title"] retain];
self.description = [[decoder decodeObjectForKey:@"description"] retain];
self.idnum = [[decoder decodeIntegerForKey:@"idnum"] retain];
self.rating = [[decoder decodeIntegerForKey:@"rating"] retain];
self.frequency = [[decoder decodeIntegerForKey:@"frequency"] retain];
NSLog(@"Decoding!");
return self;
}
그리고 헤더 : 그것은 간단한데
@interface Workout : NSObject{
NSMutableArray *exercises;
NSString *title;
NSString *description;
NSInteger idnum;
NSInteger rating;
NSInteger frequency;
}
- (void) encodeWithCoder: (NSCoder *) encoder;
- (id) initWithCoder: (NSCoder *) decoder;
@property(nonatomic,retain) NSMutableArray *exercises;
@property(nonatomic,retain) NSString *title;
@property(nonatomic,retain) NSString *description;
@property(nonatomic) NSInteger idnum;
@property(nonatomic) NSInteger rating;
@property(nonatomic) NSInteger frequency;
@end
합니다. encodeInteger 내가 그것을 통과 NSInteger을 받아, decodeIntegerForKey는 NSInteger 반환하지만 나는이 이상한 오류를 얻을 :
경고 : 잘못된 수신기 종류 'NSInteger'
과 decodeIntegerForKey 명령이 실행될 때, 나는 얻을 exec 나쁜 액세스.
왜 이런 일이 발생합니까?