NSUserDafaults при чтении Root.plist получил нулевое значение

Это код в моем AppDelegate:

    NSString *pathStr = [[NSBundle mainBundle] bundlePath];
    NSString *settingsBundlePath = [pathStr stringByAppendingPathComponent:@"Settings.bundle"];
    NSString *finalPath = [settingsBundlePath stringByAppendingPathComponent:@"Root.plist"];

    NSDictionary *settingsDict = [NSDictionary dictionaryWithContentsOfFile:finalPath];
    NSArray *prefSpecifierArray = [settingsDict objectForKey:@"PreferenceSpecifiers"];

prefSpecifiersArray имеет значение 0x0 ‹ nil >. Я действительно не знаю, как это возможно! Это мой Root.plist:

введите здесь описание изображения


person Lolloz89    schedule 09.12.2011    source источник
comment
Я бы перепроверил finalPath и settingsDict. Также убедитесь, что Settings.bundle копируется в пакет приложений.   -  person djromero    schedule 09.12.2011
comment
Хорошо, когда я создаю приложение, настройка не загружается. Почему? Что-то не так в Settings.Bundle?   -  person Lolloz89    schedule 09.12.2011


Ответы (1)


Значения из settings.bundle фактически не загружаются в NSUserDefaults, пока пользователь не откроет настройки в первый раз. По умолчанию они выключены. Как только пользователь откроет пакет настроек, он заполнит его для вас.

person Bill Burgess    schedule 16.12.2011