简介
在使用Tableview时有时候会产生各种各样的小问题,下面说下Tableview偏移问题的产生和解决方法。
问题一
在iOS 11上运行tableView向下偏移64px或者20px,因为iOS 11废弃了automaticallyAdjustsScrollViewInsets,而是给UIScrollView增加了contentInsetAdjustmentBehavior属性。避免这个坑的方法是要判断
if (@available(iOS 11.0, *)) {
self.tableView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever;
}else {
self.automaticallyAdjustsScrollViewInsets = NO;
}
问题二
tableView在iOS11刷新当个组的时候reloadSections添加了一个动画效果。在低版本的时候很正常,升级到iOS11之后当tableVIew在顶部的时候没什么表现,一切正常,当你把tableVIew稍微向下划一点的时候,就会出现闪屏的情况。很是奇葩,这是因为iOS11的tableView需要设置预估高度,row的预估高度需要设置,header的预估高度需要设置,footer的预估高度需要设置。
tableView.estimatedRowHeight = 0;
tableView.estimatedSectionHeaderHeight = 0;
tableView.estimatedSectionFooterHeight = 0;
网友评论