Создание массива из списка проблем

#file-io #nsarray #plist #ios5

#файл-ввод-вывод #nsarray #плист #ios5

Вопрос:

Во-первых, небольшая предыстория. Я пытаюсь создать платформенную игру. Перед игровым слоем я хочу, чтобы «огни» проходили мимо, а под огнями я подразумеваю белые треугольники. Я пытаюсь получить координаты для треугольников из списка.

На данный момент я потратил несколько дней, пытаясь заставить свое приложение читать из списка, и я не могу заставить его работать. Это то, что у меня есть в настоящее время, и это в основном то, что интернет говорит, что я должен иметь и что это должно работать.

В HelloWorld.h:

 NSMutableArray *foregroundLights;
 

В Адском мире.м

 NSString *path = [[NSBundle mainBundle] pathForResource:@"foregroundlights" ofType:@"plist"];
foregroundLights = [[NSMutableArray alloc] initWithContentsOfFile:path];
 

Я пробовал форматировать патч всеми доступными мне способами, я пробовал использовать NSSearchPathsForDirectoriesInDomains. Я попытался сделать plist словарем и превратить его в массив. Что я упускаю из виду?

Вот фрагмент списка. Полный содержит 50 массивов по 4 целых числа.

 <?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>root</key>
<array>
    <array>
        <integer>128</integer>
        <integer>68</integer>
        <integer>246</integer>
        <integer>7</integer>
    </array>
    <array>
        <integer>181</integer>
        <integer>84</integer>
        <integer>170</integer>
        <integer>62</integer>
    </array>
    <array>
        <integer>118</integer>
        <integer>51</integer>
        <integer>142</integer>
        <integer>64</integer>
    </array>
</array>
</dict>
</plist>
 

Комментарии:

1. Прямо сейчас список представляет собой словарь с одним ключом «root», поэтому инициализация NSMutableArray вернет nil. Вы пробовали удалять узлы <dict> и <key> и иметь только <array> в списке? Когда вы запускаете код, выдает ли он ошибку или массив просто равен нулю?

2. Удаление <dict> и <key> работало до сих пор, есть и другие ошибки, которые мне нужно устранить. Странно, что Xcode добавил этот начальный словарь в список.