UIImage不会显示在UITableView中

时间:2011-10-03 21:53:50

标签: uitableview uiimage

我的UITableViewCell中有一个UIImageView没有显示。我从地址簿中获取图像并将其保存为NSData但似乎无法正常工作。

我有一个获取图像的方法:

if (ABPersonHasImageData(contactrec)){
        CFDataRef imageData = ABPersonCopyImageData(contactrec);
        [person setPic:(NSData *)imageData];
        CFRelease(imageData);
    }

我的tableviewcell有以下方法,cellPic链接到UIImageView

-(void)setCellPic:(UIImage *) pic{
    cellPic.image = pic;
}

最后,我有一个充满person s的contactsArray,每行,我这样做:

Person *persona =[contactsArray objectAtIndex:indexPath.row];
UIImage *contactImage = [UIImage imageWithData:(NSData *)[persona pic]];
[cell setCellPic:contactImage];

当我调试代码时,似乎角色有一个接触whith pic 2000bytes,但我认为它没有很好地将NSData转换为UIImage。至少,当我调试结算setCellPic时,它说cellPic.image是0x0

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

解决! 问题出在tableviewcell中的setCellPic方法。由于UIImageView具有相同的cellPic名称,编译器认为我调用了cellPic的setter但是cellPic不是UIImage,它是UIImageView。所以我改变了方法的名称,现在工作正常! 不管怎样,谢谢!