在UITableViewCell中调整UIImageView的大小

时间:2013-10-22 17:45:37

标签: xcode uitableview uiimageview uiimage tableviewcell

我的TableViewCell中有UIImageView。此图像从例如apple JSON解析。图像显示和所有工作完美但我有问题在单元格中调整此图像的大小。我试过这个,但没有。我读了很多主题,人们有同样的问题。我知道如何从URL制作图片的大小,但我有解析图像并粘贴到cell.imageView。

所以我的JSON图像代码:

[cell.imageView setImageWithURL:[NSURL URLWithString:[[array objectAtIndex:indexPath.row] objectForKey:@"artworkUrl60"]] placeholderImage:[UIImage imageNamed:@"noholder.png"]];

这个代码我测试但没有改变单元格中图片的大小

cell.imageView.frame=CGRectMake(50,50,300,300);

如何更改单元格中的图像大小但没有URL链接。我必须从cell更改大小图片。谢谢。

1 个答案:

答案 0 :(得分:1)

您需要创建一个自定义单元格(至少对于iOS 7)。

以下是一个示例:
.h

@interface UITableViewImageCell : UITableViewCell {
    CGRect                  _imageViewFrame;
}

/**
 * To use default, set width and height to 0
 */
@property(nonatomic, assign)    CGRect              imageViewFrame;
@end

.m

@implementation UITableViewImageCell
@synthesize imageViewFrame=_imageViewFrame;

-(void)setImageViewFrame:(CGRect)imageViewFrame{
    _imageViewFrame = imageViewFrame;
    [self setNeedsLayout];
}

-(void)layoutSubviews{
    [super layoutSubviews];
    if (_imageViewFrame.size.width>0 && _imageViewFrame.size.height>0) {
        self.imageView.frame = _imageViewFrame;
    }
}

@end

使用此课程,您必须致电:

cell.imageViewFrame=CGRectMake(50,50,300,300);