tableView 有个属性叫tableHeaderView 用它我们可以做很多事情,现在我们最经常用的就是tableHeadView上添加自定义View 然后可做些下拉放大的图片处理,最近做项目频繁用到tableHeaderView,出现了很多问题,现总结如下:
1使用tableHeaderView的一些坑
1.tableHeaderView的官方介绍
2.用xib 创建的自定义View 高度显示不正确
- (void)viewDidLoad {
[super viewDidLoad];
self.tableView.tableHeaderView = self.headerView;
}
- (MineHeaderView *)headerView {
if (!_headerView) {
_headerView = [[NSBundle mainBundle] loadNibNamed:@"MineHeaderView" owner:nil options:nil].lastObject;
_headerView.frame = CGRectMake(0, 0, SCREEN_WIDTH, 287);
}
return _headerView;
}
加载出来发现headView竟然是一屏 虽然我设置了自定义view的高度. what ?
我们通过涂层可以发现自定义的view的高度和我们设置的不一样 why ? 初步判断 加载时 tableHeaderView的高度 是根据自定义的View高度确定的 而官方文档显示 在使用tableHeaderView前 请将该视图的高度设置为非零值 出现的问题 我这里也有疑惑 大家知道的可以在下方评论 探讨一下
解决方法 有 两种
第一种
self.tableView.tableHeaderView = self.headerView;
self.headerView.autoresizingMask