表头与第一个单元格之间的差距

时间:2017-04-11 15:31:16

标签: ios swift xcode uitableview uikit

我有一个包含多个部分的分组表视图,标题和第一个单元格之间存在空隙,我不明白。它不是节头/页脚,当我使用调试视图层次结构时,它看起来像单元格框架的y原点导致问题:

View hierarchy

(突出显示UITableViewWrapperView)

红色和蓝色的视图是页眉和页脚,我给它们着色,所以我可以将它们排除在外作为问题。

如果我得到第一个单元格的打印输出,则该框架具有属性:frame =(0 35; 320 86)

因此看起来35的y坐标导致了单元格和标题之间的间隙。如果我在cellForRowAt中手动将单元格的y坐标设置为0,它似乎没有做任何事情。我已经将automaticAdjustScrollViewInsets设置为false。

非常感谢正确方向上的一点。

1 个答案:

答案 0 :(得分:0)

现在发生了同样的问题。

我刚刚解决了这个问题。请检查一下。它可能适合你。

tableView.tableHeaderView = myView

我在标题视图中使用了自动布局和约束。在我将它设置为tableHeaderView之后,我将标题视图框架设为(0 35 0 0)。

我使用systemLayoutSizeFitting.height得到了标题视图的高度,我知道宽度为414,并将标题视图框重置为(0 0 414 200),然后我再次将标题视图设置为我的tableHeaderView。

让height = myView.systemLayoutSizeFitting(UILayoutFittingCompressedSize).height // height = 200

myView.frame = CGRect(x:0,y:0,width:UIScreen.main.bounds.width,height:height)
tableView.tableHeaderView = myView

现在它正在为我工​​作。