可能每个人的解决方式不同,我这里说一下我平时使用到的几种方式。
方法1.就是设置两种cell,第一个自定义cell就作为整个的头部来处理。
方法2.将 tableView 的 style 设置为 UITableViewStyleGrouped。
然后在代理函数设置头部就行
-(UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section{
方法3.不需要写header的代理函数方法,将 headerView 赋值给 tableHeaderView。
方法4.tableView的style设置为plain,然后同样需要在代理函数里面绘制头视图,然后需要增加一个
-(void)scrollViewDidScroll:(UIScrollView *)scrollView{ CGFloat sectionHeaderHeight = section的高度; if (scrollView.contentOffset.y <= sectionHeaderHeight && scrollView.contentOffset.y> 0) { scrollView.contentInset = UIEdgeInsetsMake(-scrollView.contentOffset.y, 0, 0, 0); }else{ if(scrollView.contentOffset.y >= sectionHeaderHeight){ scrollView.contentInset = UIEdgeInsetsMake(-sectionHeaderHeight, 0, 0, 0); } } }
原文:https://www.cnblogs.com/shiyong139565/p/12221113.html