UIImageView и проанализированные данные XML - PullRequest
0 голосов
/ 21 сентября 2010

Здравствуйте, люди, которые намного умнее меня,

У меня есть два элемента xml, один - заголовок, а другой - URL изображения. Я пытаюсь показать как UILabel, так и UIImageView. Моя проблема в том, что изображение не отображается.

Вот что я сделал до сих пор ... Если я передам _track.consultant_pic в UILabel, я смогу увидеть строку (http://mysite.com/ted.jpg) внутри метки. Поэтому я знаю, что данные передаются из XML.

Если я напишу фактический путь URL-адреса в NSURL *, URL-адрес будет работать. Так что я знаю, что мой установленный код изображения из UIImage в UIImageView правильный.

Ответы [ 3 ]

0 голосов
/ 21 сентября 2010

Я думаю, что вам лучше всего использовать dataWithContentsOfURL:options:error: и проверить объект NSError на наличие полезной информации о том, что пошло не так, например:

NSError *error = nil;
NSData *data = [NSData dataWithContentsOfURL:url options:0 error:&error];
if (error) {
    NSLog(@"%@: %@", [error localizedDescription], [error localizedFailureReason]);
}

В несвязанной заметке у вашего метода есть утечка памяти: UIImageView сохраняет свое изображение, поэтому вам нужно добавить [currentImage release]; в конце вашего метода.

РЕДАКТИРОВАТЬ: Глядя на код, который вы только что вставили, может оказаться, что вы просто забыли подключить выход view_consultant_pic к вашему TracksDetailViewController в Интерфейсном Разработчике. Дважды проверьте, что прежде чем делать что-либо еще, это такой общий недосмотр.

0 голосов
/ 21 сентября 2010

Спасибо за помощь, ребята, я думаю, что у нас есть победитель:

В журнале он показывает мой разобранный элемент, возвращенный на следующей строке вместо сброшенного с моим временным кодом.Я никогда не замечал этого раньше, так как URL-адрес хорошо вписывался в мою UILabel.И всегда просто думал, что мой URL слишком длинный для окна журнала, поэтому он переносится на следующую строку.

Я отредактировал свой XML без пробелов

<track_title>Sleeping and selling</track_title><consultant_pic>http://localhost:8888/IMAGES/ted.jpg></consultant_pic>

Вместо:

<track_title>Sleeping and selling</track_title>
<consultant_pic>http://localhost:8888/IMAGES/ted.jpg</consultant_pic>
0 голосов
/ 21 сентября 2010

В вашем URL могут быть закодированные символы, которые мешают загрузке формы изображения. См. эту страницу для получения дополнительной информации. Что говорит NSLog(_track.consultant_pic);? Вы видите там какие-нибудь закодированные символы?

...