4

我想为 plist 文件条目分配一个布尔值。我正在执行以下操作:

NSString *aBool = realBoolValue ? @"YES" : @"NO";      
[myplist setValue: aBool forKey:@"boolKey"];
[myplist writeToFile: [NSHomeDirectory() stringByAppendingPathComponent: plistFilePath] atomically:NO];

但任务从来没有接受过。我这样做是因为以下不起作用:

[myplist setValue: realBoolValue forKey:@"boolKey"];

它给出了不兼容的类型错误。我究竟做错了什么?

- 编辑 - -

plistFilePath 被初始化为

plistFilePath = [NSHomeDirectory() stringByAppendingPathComponent: @"Library/Preferences/myfile.plist"];
4

2 回答 2

16

您可以将其包装在 NSNumber 对象中:

  [NSNumber numberWithBool:yourBool]

从 plist 读回值时使用 [NSNumber boolValue]。

于 2009-12-19T22:35:56.227 回答
0
[NSNumber numberWithBool:yourBool]

如果这样做,您将在拨打电话时收到一个号码objectForKey@"boolKey"。但是如果你在 plist 文件中添加 bool for key,你会得到一个NSCFBoolen

于 2012-03-31T07:37:55.830 回答