2010-12-01 1 views
2

Я хочу добавить элемент NSDictionary в свой набор настроек NSUserDefaults, но я не уверен, как структурировать элемент внутри файла Root.plist. Словарь должен содержать NSStrings для ключей и логические значения.NSUserDefaults: Как установить NSDictionary с ключами NSString и значениями BOOL?

На данный момент элемент внутри .plist выглядит примерно следующим псевдокода:

Item 0 -- Dictionary 
    Key -- String -- Values 
    Values -- Dictionary 
     item 0 -- String -- Speed //Key 
     item 1 -- Boolean -- NO //Value 
     etc.... 

Правильно ли это? Итак, чтобы прочитать логическое значение в моей программе, я хочу выполнить следующий код.

BOOL speedValue = [[[NSUserDefaults standardUserDefaults] objectForKey:@"Values"] objectForKey:@"Speed"]; 

ответ

4

Почти. A BOOL не является объектом, поэтому вам нужно получить его через NSNumber или что-то в этом роде.

+0

Существует булева опция в редакторе Plist, который я сумел использовать для чтения/записи к одному логическому значению, но Я хочу сделать это для нескольких булевых элементов, содержащихся в словаре. – Sabobin 2010-12-02 14:14:28

0

Сохранить:

[[NSUserDefaults standardUserDefaults]setBool:TRUE forKey:@"isEnabled"] 

нагрузка

[[NSUserDefaults standardUserDefaults]boolForKey:@"isEnabled"]