UITableViewCell显示来自UIImage的图像

时间:2013-05-13 12:04:30

标签: ios uitableview

我使用文件名和缩略图列表创建tableView。我没有文件名的问题,但是当我将UIImage数组传递给tabeView时,我得到错误,这是一个代码:

cell.imageView.image = [UIImage imageNamed:[arrayColletionImages objectAtIndex:indexPath.row]];

我得到的arrayColletionImages图片:

player = [[MPMoviePlayerController alloc] initWithContentURL:url];
thumbnail = [player thumbnailImageAtTime:0.0 timeOption:MPMovieTimeOptionExact];
[player stop];
[arrayColletionImages addObject:thumbnail];

所有UITableViewCell代码:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *simpleTableIdentifier = @"SimpleTableItem";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:simpleTableIdentifier];
if (cell == nil) {
    cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:simpleTableIdentifier];
}
cell.textLabel.text = [tableData objectAtIndex:indexPath.row];
cell.imageView.image = [UIImage imageNamed:[arrayColletionImages objectAtIndex:indexPath.row]];
NSLog(@"%@",indexPath);
return cell;
}

2 个答案:

答案 0 :(得分:0)

数组可能不包含UIImage对象。记录数组中的值

日志中的

<UIImage: 0xa8a5430>表示它是一个UIImage对象,在cellForRow代码中,您再次使用它。

cell.imageView.image = [UIImage imageNamed:[arrayColletionImages objectAtIndex:indexPath.row]];

UIImage imageNamed:期待 NSString而不是UIImage 删除此

cell.imageView.image = [UIImage imageNamed:[arrayColletionImages objectAtIndex:indexPath.row]];

在代码中尝试此操作

[cell.imageView setImage:[arrayColletionImages objectAtIndex:indexPath.row]];

答案 1 :(得分:0)

请尝试使用这个。您正在从数组中访问映像名称,但您已在此数组中存储UIImage对象,因此无需调用imageNamed: 所以写下这一行

cell.imageView.image = [arrayColletionImages objectAtIndex:indexPath.row];