iOS 10中的UITableView标题视图重叠单元格

iOS 10中的UITableView标题视图重叠单元格,ios,uitableview,Ios,Uitableview,我的应用程序中有一个简单的UITableView,还有一个用于tableView.tableHeaderView属性的自定义视图。设置此属性后,视图具有正确的大小(全宽,约45px高) 在iOS 9和以前的版本中,标题显示正确,但在iOS 10中,单元格从与我的标题视图相同的Y坐标开始,因此我的标题视图显示在第一个单元格上 设置这些属性也没有效果: self.edgesForExtendedLayout = UIRectEdgeNone; self.automaticallyAdjustsScr

我的应用程序中有一个简单的
UITableView
,还有一个用于
tableView.tableHeaderView
属性的自定义视图。设置此属性后,视图具有正确的大小(全宽,约45px高)

在iOS 9和以前的版本中,标题显示正确,但在iOS 10中,单元格从与我的标题视图相同的Y坐标开始,因此我的标题视图显示在第一个单元格上

设置这些属性也没有效果:

self.edgesForExtendedLayout = UIRectEdgeNone;
self.automaticallyAdjustsScrollViewInsets = NO;
iOS 10中有什么变化可以解释这种不同的行为吗?什么是好的解决方案


感谢

错误在于视图正在自动调整大小,因此在将其附加到tableView时,其帧高度实际上为0,这解释了该行为

将autoresizingMask设置为none修复了此错误

\u headerView.autoresizingMask=UIViewAutoresizingNone


同样,在iOS 9及以下版本中也没有必要这样做。希望这对其他人有所帮助。

只需在
tableView.tableHeaderView=headerView
之前设置
headerView.frame
,它不是节的标题,而是整个tableView标题。(这些部分没有标题)。我指的是这个:。另外,我的设置在iOS 9及以下版本中运行,所以我认为这不是问题所在……为什么这个问题得到-1?很高兴解释一下,这样我就可以提高我在这里的参与度……要在Swift 3中将UIViewAutoResizingOne设置为UIViewAutoResizingOne,请在Swift 4中将其设置为[],类似于
\u headerView.autoresizingMask=[]
self.edgesForExtendedLayout = UIRectEdgeNone;
self.automaticallyAdjustsScrollViewInsets = NO;