Я застрял в отладке NSInvalidArgumentException.Мое последнее подозрение состоит в том, что я не сохранил данные, прочитанные из plist должным образом, чтобы они были заняты каким-то другим объектом, пока я к нему обращаюсь.
Моя структура plist очень сложная, она имеет 8 уровней массивов / словарей,Я думаю, что потерял память при попытке получить доступ к объекту самого низкого уровня.
Интересно, нужно ли мне сохранять каждый элемент данных при чтении файла plist или достаточно просто сохранить объект верхнего уровня?
Вот как я прочитал:
NSData *plistXML = [[NSFileManager defaultManager] contentsAtPath:plistPath];
NSError *error = [[[NSError alloc] init] autorelease];
NSArray *temp = (NSArray *)[[NSPropertyListSerialization
propertyListWithData:plistXML
options:NSPropertyListMutableContainersAndLeaves
format:nil
error:&error] retain];
self.dataPackage = [temp objectAtIndex:0];
dataPackage
объявлен как:
@interface rootViewController:UIViewController{
NSDictionary *dataPackage;
}
@property (retain) NSDictionary *dataPackage;
и синтезирован:
@synthesize dataPackage;
Яправильно делаешь?
Спасибо
Лев