Как хранить относительно статичную, но настраиваемую информацию - PullRequest
0 голосов
/ 29 апреля 2011

У меня есть таблица (словарь словарей) для хранения отображения целых чисел в строки. У меня есть типы и подтипы. например тип 1 => фрукты и подтип 1 => яблоко.

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

Где мне хранить эту таблицу во время выполнения? Я имею в виду два подхода: (1) - поместить всю таблицу как переменную в делегат приложения, в этом случае мне нужно дважды использовать objectForKey каждый раз, когда мне нужно получить строку. (2) - создать класс со статической переменной (пока не знаю, как это сделать) и использовать метод класса, чтобы получить отображение, например. + (NSString) stringForType: subType:

Не могли бы вы оценить эти два подхода или предложить лучшие решения? Большое спасибо!

1 Ответ

0 голосов
/ 25 мая 2011

на самом деле не имеет значения, где вы положили его, если вы храните ровно одну его копию, важно обратить внимание на valueForKeyPath: .Если вы храните в листе и регулярно сохраняете его, вы получаете большую выгоду от настойчивости.Вы можете получить это автоматически с помощью объекта [NSUserDefaults standardUserDefaults];.

...