Доступ к NSMutableArray объекта - PullRequest
0 голосов
/ 29 июля 2010

Я публикую эту тему, потому что у меня проблема с приложением для iPhone с 3-х дней. Я надеюсь, что кто-то может мне помочь, потому что я схожу с ума.

Вот в чем дело: я заполняю объект userXMLData в делегате моего приложения XML-парсером. Этот объект содержит много строк NSStrings и NSMutableArrays, который содержит объекты типа Album.

Моя проблема: я могу отобразить все данные userXMLData с помощью внутренней функции, но когда я пытаюсь получить данные из массива в моем viewController, он не работает. Я имею в виду, он падает. Это странно, потому что я могу получить доступ к appDelegate.userXMLData.NSString, но не к appDelegate.userXMLData.NSMutableArray

Вот мой код:

// Initializaiton in the delegate
userXMLData = [[UserXMLData alloc] init];
userXMLData.myArray = [[NSMutableArray alloc] init];

UserXMLData.h

@interface UserXMLData : NSObject {
    // User Data
    NSString *userId;
    // Content
    NSMutableArray *myArray;
}

@property(nonatomic, retain) NSString *myString;
@property(nonatomic, copy) NSMutableArray *myArray;

@end

// Album.h

@interface Album : NSObject {
    NSString *albumId;
    NSMutableArray *content;
}

@property(nonatomic, retain) NSString *albumId;
@property(nonatomic, retain) NSMutableArray *content;

@end

Как я уже сказал, я действительно не понимаю, почему он падает. Я застрял и не могу продолжить приложение, не исправив его.

Ответы [ 2 ]

0 голосов
/ 29 июля 2010

Включить зомби, следуя инструкциям здесь:

http://loufranco.com/blog/files/debugging-memory-iphone.html

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

Самая частая причина сбоя - слишком частое отпускание (или сохранение слишком мало раз).

Кроме того, запуск Build and Analyze может иногда указывать на это.

0 голосов
/ 29 июля 2010

Будет лучше ответить, если вы покажете код, в котором пытаетесь получить доступ к массиву, и ошибку, которую получаете при сбое, но я рискну предположить, что в вашем @ @ntntizeize myArray файл реализации (.m)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...