#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 добавил этот начальный словарь в список.