我正在尝试为我的iPhone应用程序实现保存状态。
我有一个名为SaveData.plist的plist文件,我可以通过以下内容阅读
NSString *pListPath2 = [bundle pathForResource:@"SaveData" ofType:@"plist"];
NSDictionary *dictionary2 = [[NSDictionary alloc] initWithContentsOfFile:pListPath2];
self.SaveData = dictionary2;
[dictionary release];
Plist文件包含成员
SavedGame是一个布尔值,告诉应用程序这里是否确实存在有效数据(如果他们没有在游戏中退出应用程序,我不希望他们成为还原点。
得分是NSNumber。 时间是一个NSNumber
Playfield,它是NSNumbers的16元素数组
如何访问NSDictionary中的这些元素?
答案 0 :(得分:26)
尝试[NSDictionary objectForKey:]
其中Key是plist中成员的名称。
例如:
BOOL save = [[dictionary2 objectForKey:@"SavedGame"] boolValue];
将存储在plist中的对象SavedGame存储到名为save的新BOOL中。
我想你的SavedGame布尔实际上存储在NSDictionary
中作为NSNumber
,因此使用boolValue来获取NSNumber
的布尔值。
试试此文档:Apple NSDictionary Reference。
答案 1 :(得分:2)
设置Bool值您可以使用:
[Dictionary setBool:TRUE forKey:@"preference"];
对于获取Bool值,您可以使用:
[Dictionary boolForKey:@"preference"];