前言
UITableView 是在app界面里非常常用的一个控件了,打开一个app,内容列表 作者列表 朋友圈列表等等,,,都离不开 UITableView 。
而 UITableView 的精髓,则是在 UITableViewCell 展现的, 最常用的 自定义cell 有的行高是固定的,而大部分 则需要根据内容来计算行高展示的。
下面就说说我在实际开发中处理cell行高的几种情况:
1. 不需要动态计算高度
我在写tableview时,基本都是自定义cell,而所有的自定义cell,都会继承一个基类BaseTableViewCell:
.h里:
.h里:
// 重用标识
+ (NSString *)reuseIdentifier;
// cell高度
+ (CGFloat)staticHeight;
.m里:
- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier {
self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
if (self) {
self.opaque = NO;
self.selectionStyle = UITableViewCellSelectionStyleNone;
}
return self;
}
// 重用标识
+ (NSString *)reuseIdentifier {
return NSStringFromClass([self class]);
}
// cell高度
+ (CGFloat)staticHeight {
return 44.f;
}
这样写的好处是,当我们在使用tableview时,会方便我们对重用标识符 行高使用,看一下:
staticHeight可以在子类的自定义cell里更改设置,使用时:











