Wil*_*sch 36 cocoa boolean objective-c nsdictionary property-list
我有一个plist文件,其中包含一系列字典.这是其中之一:
Fred字典
名称Fred
isMale [已选中框]
所以现在我用我从plist文件中读取的字典初始化我的Person对象:
-(id) initWithDictionary: (NSDictionary *) dictionary {
if (self = [super init])
self.name = [dictionary valueForKey: @"Name"];
self.isMale = ????
}
Run Code Online (Sandbox Code Playgroud)
如何完成上面的代码,以便在plist文件中选中复选框时将self.isMale设置为YES,如果不是则选择NO.如果字典中没有键isMale,则最好也设置为NO.
Vla*_*mir 91
BOOL值通常存储在包含在NSNumber对象中的obj-c容器中.如果在您的情况下是这样,那么您可以使用以下方法检索bool值:
self.isMale = [[dictionary objectForKey:@"isMale"] boolValue];
Run Code Online (Sandbox Code Playgroud)
弗拉基米尔是对的,我只是想进入,并说好检查那些来自plist的值是否也存在,如果没有通常将其设置为默认值.
就像是:
id isMale = [dictionary valueForKey:@"isMale"];
self.isMale = isMale ? [isMale boolValue] : NO;
Run Code Online (Sandbox Code Playgroud)
哪个检查字典中是否存在键"isMale"的值.如果确实如此,则从中获取boolValue.如果没有,则将self.isMale设置为默认值NO.
| 归档时间: |
|
| 查看次数: |
18590 次 |
| 最近记录: |