【发布时间】:2010-11-12 00:59:18
【问题描述】:
我有一个类,我已将其制成单例,并且能够使用 NSKeyedArchiver 保存它的状态,但我无法将其状态拉回。
在我拥有的加载函数中
Venue *venue = [Venue sharedVenue];
NSData *data = [[NSMutableData alloc] initWithContentsOfFile:[self dataFilePath]];
NSKeyedUnarchiver *unarchiver = [[NSKeyedUnarchiver alloc] initForReadingWithData:data];
venue = [unarchiver decodeObjectForKey:@"Venue"];
[unarchiver finishDecoding];
使用这段代码,decodeObjectForKey 返回什么?它不能真的是 Venue 的另一个实例,并且它没有加载任何保存的值。在我将其转换为单例保存和加载之前工作正常。
【问题讨论】:
标签: iphone objective-c cocoa-touch singleton nskeyedarchiver