iPad не читает мои списки - PullRequest
0 голосов
/ 08 июня 2011

Когда я добавляю plists-файл в свой проект XCode, приложение iPad не может его прочитать.

Например: у меня есть massCategories.plist внутри папки моего проекта (где живет xproj-файл). Внутри моего списка есть следующий код:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Item 1</key>
    <dict>
        <key>Key 1</key>
        <string>Value 1</string>
        <key>Key 2</key>
        <string>Value 2</string>
    </dict>
    <key>Item 2</key>
    <dict>
        <key>Key 3</key>
        <string>Value 3</string>
        <key>Key 4</key>
        <string>Value 4</string>
    </dict>
</dict>
</plist>

Внутри моего ViewController у меня есть следующий метод:

- (void)viewDidLoad
{
    [super viewDidLoad];
    NSBundle *mainBundle = [NSBundle mainBundle];
    NSString *plistData = [mainBundle pathForResource:@"MassCategories" ofType:@"plist"];
    NSArray *massCategories = [[NSArray alloc] initWithContentsOfFile:plistData];
    // breakpoint
}

Во время работы (и «паузы» в точке останова) massCategories содержит ноль. Добавление файла plist в другую папку, похоже, не работает (или я, должно быть, использую неправильные папки, что вполне возможно: -)).

Есть предложения?

Ответы [ 2 ]

1 голос
/ 08 июня 2011

Убедитесь, что вы правильно назвали свое имя. Вы говорите, что файл называется «massCategories.plist», но пытаетесь загрузить @ «MassCategories». iOS чувствительна к регистру.

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

Понял!

Просто обновите plist так, чтобы основным элементом был массив (как я и ожидал при попытке импортировать его как массив):

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array>
...
</array>
</plist>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...