NSUserDefaults standardUserDefaults не возвращает результаты - PullRequest
0 голосов
/ 02 июня 2011

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

Я использую стандартный пример Apple:

- (void)applicationDidFinishLaunching:(UIApplication *)application 
{
    NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; 
    [self setShouldPlaySounds:[defaults boolForKey:@"play_sounds_preference"]]; 
    // Finish app initialization...
}

Я изменил play_sound_preferences на свой идентификатор в комплекте.Когда мое приложение запускается, ошибки не возвращаются, но значение равно 0, хотя я установил значение 10. Это подтверждается: при просмотре настроек ползунок находится на отметке 10%.

Я что-то упустил?

Вот фактический блок кода:

 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    // Override point for customization after application launch.
    NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; 
    searchRadius = [defaults floatForKey:@"SearchRadius"];
    returnResults = [defaults integerForKey:@"RecordReturnCount"];
    // ...
}

1 Ответ

0 голосов
/ 02 июня 2011

Без какого-либо другого кода я могу только предположить, что вы неправильно настраиваете SearchRadius и RecordReturnCount.Они были бы такими:

NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults setFloat: searchRadius forKey: @"SearchRadius"];
[defaults setInteger: returnResults forKey: @"RecordReturnCount"];

Прошло много времени с тех пор, как я использовал это, но я не помню, чтобы это было так сложно.Если вы заглянете в свои предпочтения, вы увидите com.YOURCOMPANYHERE.YOURPROGRAM.plist - это просто проверить, чтобы увидеть, где вы могли ошибаться.инициализировать настройки - как правило, у меня будет флаг с именем @ «Initialized» - если вы обращаетесь к нему, и он возвращает НЕТ, то вы никогда не настраивали свои пользовательские настройки и можете их устанавливать ... обязательно установите @ »Инициализировано "ДА !!!Это устранит необходимость в комплекте настроек.

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