UITableViewCells显示在表视图容器之外

时间:2019-06-22 18:08:57

标签: ios swift

我有一个视图控制器,其中包含一个嵌入容器视图中的表视图控制器:

enter image description here

在左侧视图控制器内部看到的是一个容器视图,该容器视图通过情节提要脚本将表视图控制器嵌入其中。就像您在图像中看到的一样,还有一个约束条件,用于指定容器视图和上述分段控件之间的顶部空间。

启动应用程序时,一切正常,并且可以看到分段控件和表视图单元之间的分隔空间。但是,当我向下滚动时,如您在这张照片中所见,表格视图单元格与分段控件重叠:

enter image description here

通过调试视图层次结构,我发现问题在于即使单元格位于容器视图之外,也会显示这些单元格:

enter image description here

在上面的图片中看到的是表格视图单元格和容器视图。我画了两条红线,一条从容器视图的顶部开始,一条从第一个表格视图单元的顶部开始,就像您看到表格视图单元格超出了容器视图的界限,这意味着它们是可见的即使它们在表格视图区域之外。而是,将嵌入表视图的容器视图放在分段控件的下面,并遵守由约束施加的分隔空间。

2 个答案:

答案 0 :(得分:1)

您可以尝试设置clipsToBounds吗?可以帮忙。

tableView.clipsToBounds = true

答案 1 :(得分:0)

必须与您布置约束的方式有关。图片很难分辨。

我为具有分段控件的视图设置了高度限制。并将该视图和容器视图之间的垂直间距设置为0。

enter image description here

我上传了一个演示项目here