1.视图漂移或者闪动缘由:
由于iOS 11后系统默认开启Self-Sizing,首先要知道Self-Sizing是个什么东东。官方文档是这样解释的:大概就是说咱们不用再本身去计算cell的高度了,只要设置好这两个属性,约束好布局,系统会自动计算好cell的高度。
IOS11之后,Self-Sizing默认开启,包括Headers, footers。若是项目中没使用estimatedRowHeight属性,在IOS11下会有奇奇怪怪的现象,由于IOS11以前,estimatedRowHeight默认为0,Self-Sizing自动打开后,contentSize和contentOffset均可能发生改变。
因此能够经过如下方式禁用:布局
在tableView初始化的地方加入下面代码code
self.tableView.estimatedRowHeight = 0; self.tableView.estimatedSectionHeaderHeight = 0; self.tableView.estimatedSectionFooterHeight = 0;
如今在reloadData视图漂移或者闪动就没有了文档