Ios UITableViewCells显示在表视图容器的外部

Ios UITableViewCells显示在表视图容器的外部,ios,swift,Ios,Swift,我有一个视图控制器,其中包含一个嵌入在容器视图中的表视图控制器: 在左边的视图控制器内部,您看到的是一个容器视图,它通过情节提要序列嵌入了表视图控制器。如图所示,还有一个约束指定容器视图和上面分段控件之间的顶部空间 当我启动应用程序时,一切正常,我可以看到分段控件和表视图单元格之间的分隔空间。但当我向下滚动时,如图所示,表格视图单元格与分段控件重叠: 通过调试视图层次结构,我发现问题在于单元格即使在容器视图之外也会显示: 您在上图中看到的是表格视图单元格和容器视图。我画了两条红线,一条从容器视图

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

在左边的视图控制器内部,您看到的是一个容器视图,它通过情节提要序列嵌入了表视图控制器。如图所示,还有一个约束指定容器视图和上面分段控件之间的顶部空间

当我启动应用程序时,一切正常,我可以看到分段控件和表视图单元格之间的分隔空间。但当我向下滚动时,如图所示,表格视图单元格与分段控件重叠:

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

您在上图中看到的是表格视图单元格和容器视图。我画了两条红线,一条从容器视图顶部开始,另一条从第一个表视图单元格的顶部开始,就像您看到的那样,表视图单元格超出了容器视图的边界,这意味着它们即使在表视图区域之外也可见。相反,嵌入表视图的容器视图位于分段控件下方,并且受约束所施加的分隔空间的影响。

能否尝试设置clipsToBounds?这可能会有帮助

tableView.clipsToBounds = true

这一定与你如何布置你的约束有关。从照片上很难说

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


我上传了一个演示项目。

只需确保tableView的视图约束等于containerView的topAnchor、bottomAnchor等,然后设置tableView.clipsToBounds=true