-
完全不去思考任何tableVIew的滑动和显示的时候, 我们应该直接使用_tableView = [[UITableView alloc]init];创建TableVIew, 这是创建的tableVIew效果和_tableView = [[UITableView alloc] initWithFrame:CGRectZero style:UITableViewStylePlain];的效果应该是一样的, 这是tableView的hearView是不能跟随TableView滑动的.而且TableView空白部分应该有cell的分割线.
-
使用_tableView = [[UITableView alloc] initWithFrame:CGRectZero style:UITableViewStyleGrouped];创建的tableView的head是可以跟着tableView滑动的. 但是如果这个时候如果section大于1, 并且都有head的时候就会在head和上一个cell之间有一个默认的空白. 但是cell没有多余的分割线
-
第二种使TableView的head跟着head滚动的方法是添加类似这样一段代码
if (scrollView== self.tableView) {
CGFloat sectionHeaderHeight=10 * 2 + 26 / 2 + 4;
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);
}
}
}
这个时候TableView 还是会在没有cell的地方有cell的分割线
* #### 这个时候 设置` _tableView.tableFooterView = [UIView new];`是可以将TableView多余的分割线去掉
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。