Я проверил другие посты, но, похоже, не отвечает на мой вопрос, поэтому здесь я иду:)
У меня есть 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">
<dict>
<key>001</key>
<dict>
<key>Name</key>
<string>Name1</string>
<key>Number</key>
<string>001</string>
</dict>
<key>002</key>
<dict>
<key>Name</key>
<string>Name2</string>
<key>Number</key>
<string>002</string>
</dict>
</dict>
</plist>
Я пытаюсь преобразовать этот код в массив и использовать его для источника TableView.Тем не менее, даже если бы я видел другие посты, ни одна из них мне не помогла (что я вижу, это мой первый настоящий проект iOS, поэтому я не могу на 100% манипулировать их кодом).Я хочу, чтобы таблица создавалась из этого Plist, и, поскольку она будет содержать не менее 100 элементов (с добавлением еще большего количества элементов через Plist), я бы хотел, чтобы она была сгенерирована.
Однако главное, что яя пытаюсь сделать, это получить массив для получения информации от Key1, а затем Key2, Key3 ... как это было бы в следующем коде вручную (который я должен набрать вручную, и я буду добавлять дополнительную информацию, так чтоЯ хочу, чтобы он исходил из Plist):
NSDictionary *item1 = [[NSDictionary alloc] initWithObjectsAndKeys:
@"Name1", @"Name", @"001", @"Number", nil];
NSDictionary *item2 = [[NSDictionary alloc] initWithObjectsAndKeys:
@"Name2", @"Name", @"002", @"Number", nil];
NSDictionary *item3 = [[NSDictionary alloc] initWithObjectsAndKeys:
@"Name3", @"Name", @"003", @"Number", nil];
Одна вещь, которую я хотел бы, - это иметь возможность изменять порядок отображения таблицы (между числом и алфавитом), что я не думаю,это очень важно, но это то, что я хотел бы добавить, если я совершаю ошибку с чем-то, что не может быть сделано?
Спасибо за чтение,
Джозеф Даффи
Редактировать: Решено, но новая проблема, пожалуйста, прочитайте ниже. Теперь решено, спасибо! Спасибо за информацию, это было очень полезно!Однако, когда я поставил следующее:
- (void)viewDidLoad
{
NSBundle *bundleLocation = [NSBundle mainBundle];
NSString *arrayLocation = [bundleLocation pathForResource:@"plistname" ofType:@"plist"];
NSArray *plistcontentsArray = [[NSArray alloc] initWithContentsOfFile:arrayLocation];
self.pokemonNames = pokemonArray;
[bundleLocation release];
[plistArray release];
[super viewDidLoad];
}
Все отлично работает.Но когда я добавляю [arrayLocation release];
, он вылетает с "exc_bad_access".Есть идеи?:)