Пользовательские классы не сохраняются - PullRequest
0 голосов
/ 13 сентября 2010

У меня есть NSXMLParser, который анализирует API YT.Затем он превращает все видео в класс, который я написал, называется видео.Затем класс помещается в массив.Затем обратно в свой rootviewcontroller я получаю доступ к xmlParser.allVideos (xmlParser - это класс, который я написал, который является делегатом для парсера xml. Вот что я делаю с ним в viewDidLoad:

arrayFromXML = xmlParser.allVideos;

Затем на чертежеиз таблицы просмотра я делаю это:

tempVideo = [arrayFromXML objectAtIndex:indexPath.row];
cell.textLabel.text = tempVideo.videoTitle; //crashes here and says NSString has been deallocated.

Как я могу это исправить?

1 Ответ

1 голос
/ 13 сентября 2010

Если arrayFromXML является переменной экземпляра, вы должны retain или copy (чтобы быть в безопасности от последующих манипуляций), так как массив xmlParser может просто не быть живым, когда другие методы вызываются позже:

arrayFromXML = [xmlParser.allVideos copy];

Или еще лучше, используя свойство copy или retain:

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