Как написать BOOL для plist? - PullRequest
       8

Как написать BOOL для plist?

4 голосов
/ 20 декабря 2009

Я бы хотел присвоить логическое значение записи в файле 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"];

Ответы [ 2 ]

16 голосов
/ 20 декабря 2009

Вы можете обернуть его в объект NSNumber:

  [NSNumber numberWithBool:yourBool]

Используйте [NSNumber boolValue] при чтении значения из списка.

0 голосов
/ 31 марта 2012
[NSNumber numberWithBool:yourBool]

Если вы сделаете это, вы получите номер, когда позвоните objectForKey@"boolKey". Но если вы добавите bool для ключа в файл plist, вы получите NSCFBoolen .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...