Вопрос

В приложении My iPhone есть несколько настроек, которые пользователи, вероятно, будут менять довольно часто.Я хотел бы знать, есть ли какой-либо предлагаемый способ обработки таких настроек (чтение и сохранение их).На сайтах Apple я нашел только руководство по интеграции настроек вашего приложения с Settings app (Ссылка) но я не хочу, чтобы пользователь выходил из моего приложения, чтобы он мог просто изменить опцию.

Существует ли какой-либо механизм по умолчанию для обработки таких настроек в самом приложении или я должен реализовать собственное решение?

Это было полезно?

Решение

Лучший и простой способ сохранить настройки в iPhone - это NSUserDefaults.Избавляет вас от необходимости иметь дело с файловой системой, списками списков или любым другим подобным материалом.

NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];

NSString *storedVal = @"This is what you want to save";
NSString *key = @"storedVal"; // the key for the data

[defaults setObject:storedVal forKey:key];
[defaults synchronize]; // this method is optional


// Get the results out
NSString *results = [defaults stringForKey:key];

Вот что говорит Apple о типах объектов, которые вы можете хранить в настройках по умолчанию

Объект по умолчанию должен быть свойством list, то есть экземпляром (или для коллекций комбинацией экземпляров of):NSData, NSString, NSNumber, NSDate, NSArray или NSDictionary.Если вы хотите сохранить любой другой тип объекта, вам обычно следует заархивировать его для создания экземпляра NSData.

Есть еще несколько предостережений, например, если вы храните NSDictionary, ключевые значения должны быть строковыми.

Другие советы

Если вы ищете пользовательский интерфейс для редактирования настроек внутри приложения, ознакомьтесь с InAppSettingsKit по адресу http://www.inappsettingskit.com

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top