UITableView使用UITableViewStylePlain樣式冠骄。
UIView *view = [[UIView alloc] init];
view.backgroundColor = [UIColor redColor];
[view addSubview:self.customHeaderView];
[_customHeaderView mas_makeConstraints:^(MASConstraintMaker *make) {
make.edges.equalTo(view);
}];
_tableView.tableHeaderView = view;
__weak typeof(self) weakSelf = self;// 個人習慣
[view mas_remakeConstraints:^(MASConstraintMaker *make) {
make.top.width.equalTo(weakSelf.tableView);
}];
[_tableView layoutIfNeeded];
UITableView使用UITableViewStyleGrouped樣式(使用的時候遇到了tableview的headerView與第一個分組之間有一塊多余的空白,解決方法是設(shè)置一個固定的高度,若你也遇到了相同的問題加袋,可以嘗試一下)凛辣。
UIView *view = [[UIView alloc] initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, CGFLOAT_MIN)]; // 此處設(shè)置一個固定高度,解決有空白的問題
view.backgroundColor = [UIColor redColor];
[view addSubview:self.customHeaderView];
[_customHeaderView mas_makeConstraints:^(MASConstraintMaker *make) {
make.edges.equalTo(view);
}];
_tableView.tableHeaderView = view;
__weak typeof(self) weakSelf = self;
[view mas_remakeConstraints:^(MASConstraintMaker *make) {
make.top.width.equalTo(weakSelf.tableView);
make.height.equalTo(weakSelf.customHeaderView.mas_height).priorityHigh();
}];
[_tableView layoutIfNeeded];