Загрузка изображений из URL в UIImageView UITableViewCell

У меня есть следующий код: (Примечание: newsImageURLNSArray )

 NSString *imagesURL = @"http://aud.edu/images/newsimage01.png,http://aud.edu/images/newsimage04.png,http://aud.edu/images/newsimage02.png,http://aud.edu/images/newsimage03.png,http://aud.edu/images/newsimage01.png,http://aud.edu/images/newsimage04.png,http://aud.edu/images/newsimage01.png,http://aud.edu/images/newsimage04.png,http://aud.edu/images/newsimage01.png,http://aud.edu/images/newsimage04.png,"; newsImageURL = [[NSArray alloc] initWithArray:[AllNewsHeadLine componentsSeparatedByString:@","]]; 

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

 NSData* imageData = [[NSData alloc] initWithContentsOfURL:[NSURL URLWithString: [newsImageURL objectAtIndex:indexPath.row]]]; cell.image = [UIImage imageWithData:imageData]; 

Изображение загружается отлично, когда я использую эту строку вместо:

 cell.image = [UIImage imageNamed:@"imagename.png"]; 

Что я делаю не так?

Вы должны использовать существующую структуру, которая поддерживает кеширование, владельцы мест по умолчанию и ленивую загрузку изображений.

https://github.com/rs/SDWebImage – хорошая и простая структура

 #import "UIImageView+WebCache.h" ... - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { static NSString *MyIdentifier = @"MyIdentifier"; UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:MyIdentifier]; if (cell == nil) { cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:MyIdentifier] autorelease]; } // Here we use the new provided setImageWithURL: method to load the web image [cell.imageView setImageWithURL:[NSURL URLWithString:@"http://aud.edu/images/newsimage01.png,http://aud.edu/images/newsimage04.png"] placeholderImage:[UIImage imageNamed:@"placeholder.png"]]; cell.textLabel.text = @"My Text"; return cell; } 

Вы можете загружать данные таким образом:

 NSData *data = [NSData dataWithContentsOfURL: [NSURL URLWithString: [newsImageURL objectAtIndex:indexPath.row]]]; 

И вы также можете создать массив URL-адресов:

 NSArray *newsImageURL = [imagesURL componentsSeparatedByString:@","]; 

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

Возможно, вы можете попробовать https://github.com/SpringOx/ALImageView.git . Это намного проще, чем SDWebImage. Вам нужны только два исходных файла (ALImageView.h / ALImageView.m). Вы можете повторно использовать представление изображения для перезагружать разные URL-адреса в ячейке tableview.

  1. Поддержка локального и кеш-памяти;
  2. Поддержка заполнителей;
  3. Поддержка касания касания (целевое действие);
  4. Угол поддержки для изображения;

Вы можете легко загрузить все изображения с помощью справки следующего кода, Details Array – это основной массив

 Details Array :- { "item_code" = 709; "item_desc" = Qweqweqwe; "item_name" = AQA; "item_photo" = "http://toshaya.com/webapp/snap&sell/api/img_items/709.png"; "item_price" = "0.00"; "item_till" = "20-25"; "item_type" = Orange; latitude = ""; longitude = ""; } 

С помощью следующего кода Получите URL-адрес фотографии в строку

  NSString * result = [[DetailArray objectAtIndex:indexPath.row]objectForKey:@"item_photo"]; //componentsJoinedByString:@""]; NSLog(@"%@",result); NSData *imageData = [NSData dataWithContentsOfURL:[NSURL URLWithString:result]]; cell.icon.image = [UIImage imageWithData:imageData]; 
  • Событие удаленного управления, вызывающее закрытие приложения iOS для iOS
  • iPhone как писать символ на ярлыке?
  • Создание статических библиотек Graphviz для iOS
  • Как удалить распознаватель жестов
  • Как читать журналы сбоев iOS 4?
  • Как программно определить Game Center?
  • Проблема с ориентацией при установке RootViewController
  • создать CCMenuItemLabel с настраиваемым файлом шрифта
  • Устанавливать пользовательский шрифт по умолчанию в программировании на iphone
  • Почему MFMailComposer с <img> не показывает изображение по почте?
  • UIImagePickerController - настройка максимальной продолжительности видео
  • Давайте будем гением компьютера.