1

我正在尝试通过网站将图像解析为 UITableViewCell。我可以轻松解析一个图像,但我正在尝试解析不同的多个图像。我对如何完成此任务有一些想法,但我想知道执行此类任务的最简单和最佳方法是什么。我怀疑这是否有帮助,但 icon.jpg 的名称如下 1_icon,2_icon 等...任何提示将不胜感激。

  - (void)viewDidLoad
  {

mydata = [[NSData alloc] initWithContentsOfURL:[NSURL URLWithString:@"http://example.com/uploads/1_icon.jpg"]];
myimage = [[UIImage alloc] initWithData:mydata];
_imageToDisplay.image=myimage;
self.tableview.delegate = self;
self.tableview.dataSource = self;




[super viewDidLoad];
// Do any additional setup after loading the view.
}

   - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {


static NSString *CellIdentifier = @"Cell";


UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
    cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}

cell.accessoryView = [[UIImageView alloc] initWithImage:myimage];

return cell;
}

更新.m

 _imagesArray = [[NSMutableArray alloc] init];
int numberOfIcons=30;

for(int i = 1; i <= numberOfIcons; i++){
    [_imagesArray addObject:[[UIImage alloc] initWithData:[[NSData alloc] initWithContentsOfURL:[NSURL URLWithString:[NSString stringWithFormat:@"http://example.com/uploads/%d_icon.jpg", i]]]]];
    NSLog(@"%d",numberOfIcons);

更新.h

     NSMutableArray *_imagesArray;
     NSArray*array;
4

1 回答 1

0

您可以预加载数组中的所有图像,并在创建单元格时引用它们。这将阻止您在每次创建单元格时从网络加载图像。

在 viewDidLoad 中:

_imagesArray = [NSMutableArray alloc] init];
for(int i = 1; i <= numberOfIcons; i++){
  [array addObject:[[UIImage alloc] initWithData:[[NSData alloc] initWithContentsOfURL:[NSURL URLWithString:[NSString stringWithFormat:@"http://example.com/uploads/%d_icon.jpg", i]]]]];
}

在 cellForRowAtIndexPath 中:

cell.accessoryView = [[UIImageView alloc] initWithImage:[_imagesArray objectAtIndex:indexPath.row]];    
于 2013-05-30T02:27:43.407 回答