自适应cell高度的tableView,加载的时候好好的,下拉刷新的时候开始有点抖,上拉加载的时候,抖得都跳起来了,有时候,还会在tableView的上部,凭空出现一片空白,这个时候要考虑开启防抖模式了,怎么开?三行代码搞定!
_tableView.estimatedRowHeight = 0;
_tableView.estimatedSectionHeaderHeight = 0;
_tableView.estimatedSectionFooterHeight = 0;
estimatedRowHeight 默认是 UITableViewAutomaticDimension,设置成 0 就禁止了。
estimatedRowHeight 是用来设置cell高度的预估值的,iOS11之前,默认是 0,iOS11之后,默认不再是 0,如果已经计算出来cell的高度,最好还是关掉这个预估值,禁止掉才能使tableView不会抖来抖去的。
estimatedSectionHeaderHeight 和 estimatedSectionFooterHeight 与 estimatedRowHeight 是一样的道理,在能够确定 header 和 footer 的高度的情况下,直接设置成 0,禁止掉,彻底开启防抖模式。
妈妈再也不用担心下拉刷新和上拉加载,屏幕跳动和抖来抖去的问题了。