group数组的tableView的第二个headerView悬浮在界面上遮住后面的cell

我的headerView是在第二组第三组第四组才有,第一组是没有headerView的,之所以这样是因为在之前的编写中发现,把那个很长的View作为第一组cell的headerView的时候,它不随下面的cell上划,当时也没找到很好的解决办法,就这样吧这个很高的View作为了第一组的第一个cell的界面了,但是写完之后发现一个问题,这个第二组的headerView悬浮在了整个界面之上,且不能移除,这就让我很烦恼了, 而且在网上找了很多资料,都只是讲第一组cell的headerView遮住后面的cell,我这里找到了以前写的最简单的分组cell的tableView代码,发现了怎么破局的方式

这是我之前的下半部分截图:

group数组的tableView的第二个headerView悬浮在界面上遮住后面的cell_第1张图片
C36D792C-51BE-45E0-8800-288309D566B9.png

这是我解决之后的下半部分截图:

group数组的tableView的第二个headerView悬浮在界面上遮住后面的cell_第2张图片
D7A6E333-F5CE-4375-9EED-D58F84558244.png

神奇的第二组的headerView不再悬浮在上面了,虽然我的headerView的一些分界线不见了被白色覆盖了。

效果看完了,废话不多说,上代码

***********原来的tableView创建:***********
_tableView = [[UITableView alloc] initWithFrame:CGRectMake(0, flexibleHeight(0), SCREEN_WIDTH, SCREEN_HEIGHT-104) style:UITableViewStyleGrouped];

//2.显示在界面上

[self.view addSubview:_tableView];

//3.设置代理

_tableView.dataSource = self;
_tableView.delegate = self;

因为我在写之前是准备用UIViewController来编写的,后来发现不需要了,就改成了继承自UITableViewController

***********改后的tableView创建:***********

_tableView = [[UITableView alloc] initWithFrame:CGRectMake(0, flexibleHeight(0), SCREEN_WIDTH, SCREEN_HEIGHT-104) style:UITableViewStylePlain];

self.tableView = _tableView;

就是这么简单!!!!

总结:

    其实这里的道理和很多遇到第一个组的cell的前几行被headerView遮住是一个道理,系统的实现方法里面headerView部分的代理方法部分缺失存在缺陷,代理方法里面写的headerView和self.tableViewController.headerView是有区别的,我在这里不写它,而且将类型改为普通的tableView类型,能解决这个让我头疼的情况。

**************新手上路,如有不对之处,请多多指正*******************

你可能感兴趣的:(group数组的tableView的第二个headerView悬浮在界面上遮住后面的cell)