UIImage ошибка с динамической строкой - PullRequest
3 голосов
/ 15 июля 2011

Я пытаюсь загрузить изображение в ячейку. Следующий код работает правильно:

NSString *imageURL = @"http://localhost/images/image2.jpg";
NSData *imageData = [[NSData alloc] initWithContentsOfURL:[NSURL URLWithString:imageURL]];
UIImage *rowImage = [[UIImage alloc] initWithData:imageData];

cell.image=rowImage;

, но когда я изменяю imageURL на динамический, изображение не отображается:

NSString *imageURL = [[stories objectAtIndex:indexPath.row] objectForKey:@"image"];

Возможно, вы говорите, что проблема в:

[[stories objectAtIndex:indexPath.row] objectForKey:@"image"];

Но это не так, я попытался зарегистрировать его, и результат такой, как ожидалось:

NSSLog(@"%@",[[stories objectAtIndex:indexPath.row] objectForKey:@"image"]);
//Outputs http://localhost/images/image2.jpg

Что может быть не так?

Ответы [ 2 ]

2 голосов
/ 16 июля 2011

Я предполагаю, что есть место до или после строки.Так что сделайте это,

NSString *imageURL = [[stories objectAtIndex:indexPath.row] objectForKey:@"image"];
imageURL = [imageURL stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]];

NSData *imageData = [[NSData alloc] initWithContentsOfURL:[NSURL URLWithString:imageURL]];
UIImage *rowImage = [[UIImage alloc] initWithData:imageData];

Хотя это в основном должно решить вашу проблему, я советую вам обрезать строки перед добавлением в словарь во время синтаксического анализа XML.imageData и rowImage.Возможно, вы уже делаете это, но этого нет в приведенном выше коде, поэтому я просто хотел указать, что это может быть утечка.

1 голос
/ 15 июля 2011

попробуйте это

    NSString *imageURL =[NSString stringWithFormat:@"%@",[[stories objectAtIndex:indexPath.row] objectForKey:@"image"]];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...