美文网首页
tableView闪烁飘逸

tableView闪烁飘逸

作者: 梦想家家家 | 来源:发表于2017-11-10 19:34 被阅读141次

iOS UITableView reloadData 视图漂移或者闪动解决方法

原创

2017年11月02日 16:48:23

1.视图漂移或者闪动原因:

因为iOS 11后系统默认开启Self-Sizing,首先要知道Self-Sizing是个什么东东。官方文档是这样解释的:大概就是说我们不用再自己去计算cell的高度了,只要设置好这两个属性,约束好布局,系统会自动计算好cell的高度。

IOS11以后,Self-Sizing默认开启,包括Headers, footers。如果项目中没使用estimatedRowHeight属性,在IOS11下会有奇奇怪怪的现象,因为IOS11之前,estimatedRowHeight默认为0,Self-Sizing自动打开后,contentSize和contentOffset都可能发生改变。

所以可以通过以下方式禁用:

在tableView初始化的地方加入下面代码

    self.tableView.estimatedRowHeight = 0;
    self.tableView.estimatedSectionHeaderHeight = 0;
    self.tableView.estimatedSectionFooterHeight = 0;

现在在reloadData视图漂移或者闪动就没有了

相关文章

网友评论

      本文标题:tableView闪烁飘逸

      本文链接:https://www.haomeiwen.com/subject/zpzvyxtx.html