我有一個級別類,巫包含一些屬性另一類LevelPoints,我如何通過使用對象內的對象的NSKeyedArchiver archiveRootObject不起作用!
[projectDictionary setObject:level forKey:@"testlevel"];
[NSKeyedArchiver archiveRootObject:projectDictionary toFile:@"somewhere"];
我無法用值了[NSKeyedUnarchiver unarchiveObjectWithFile的_levelPoints變量歸檔級別的實例: DATAPATH];
任何想法?
#import <Foundation/Foundation.h>
@interface Level : NSObject <NSCoding> {
int _levelNum;
float _spawnRate;
NSString *_bgImageName;
LevelPoints *_levelPoints;
}
@property (nonatomic, assign) int levelNum;
@property (nonatomic, assign) float spawnRate;
@property (nonatomic, copy) NSString *bgImageName;
@property (nonatomic, retain) LevelPoints *levelPoints;
- (id)initWithLevelNum:(int)levelNum spawnRate:(float)spawnRate bgImageName:(NSString *)bgImageName;
- (id)initWithCoder:(NSCoder *)aDecoder;
- (void)encodeWithCoder:(NSCoder *)aCoder;
@end
#import <Foundation/Foundation.h>
@interface LevelPoints : NSObject <NSCoding> {
int _score;
int _outflows;
int _mistakes;
}
@property (nonatomic, assign) int score;
@property (nonatomic, assign) int outflows;
@property (nonatomic, assign) int mistakes;
- (id)initWithCoder:(NSCoder *)aDecoder;
- (void)encodeWithCoder:(NSCoder *)aCoder;
@end
沒有實現文件,很難分辨出現問題。 – Eiko 2010-08-08 10:08:27