一、tabViewCell,通过image的比例高算出cell 的高度
#import "TableViewCell.h" @implementation TableViewCell
{
UIImageView *imageView;
} - (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier
{
self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
if (self) { imageView = [[UIImageView alloc] init];
[self.contentView addSubview:imageView];
}
return self;
} - (void)setImageName:(NSString *)imageName {
_imageName = imageName;
// 设置imageView显示的图片
UIImage *image = [UIImage imageNamed:imageName];
imageView.image = image; // 给imageView设置大小
// 宽度是屏幕的 1/3
float width = CGRectGetWidth([[UIScreen mainScreen] bounds]) / ; // 根据比例算出高度
float height = image.size.height * width / image.size.width; imageView.frame = CGRectMake(, , width, height);
}
二、VC
在VC中创建三个tableView,三个数据源数组,三个CGFloat对象记录tableView添加image之后的高度变化,每次添加图片到数组 给高度最低的一个(高度相同给第一个);
cellforRow的计算以为是如此,在插入数组图片的同时也可以记录一个数组装cell的高度
UIImage *image = [UIImage imageNamed:imageName];
imageView.image = image; // 给imageView设置大小
// 宽度是屏幕的 1/3
float width = CGRectGetWidth([[UIScreen mainScreen] bounds]) / ; // 根据比例算出高度
float height = image.size.height * width / image.size.width;