设置约束后 NavigationBar 后面的 UITableView
UITableView behind NavigationBar after setting constraints
我已将 TableView 添加到我的 ViewController。
我设置了这样的约束:
然而,当我 运行 项目的第一个单元格顶部(如 40px)位于 NavigationBar 后面时:
我在这里做错了什么?为什么 TableView 在 navigationControllerBar 后面?
您没有考虑使用约束的导航栏。将顶部约束设置为 50。
由于界面构建器中的场景没有导航栏 - 约束没有考虑它并且视图上的 y(顶部)设置为 0,没有导航栏。
要么将顶部约束设置为 50,要么在视图中放置一个栏并为其设置顶部约束。
不要只将约束设置为 50,这在很多层面上都是错误的。
约束 table 视图的视图控制器的顶部到顶部布局指南。这也将为您处理轮换。在横向导航栏可能有较小的高度,这也说明了这一点。如果将它设置为 50,它可能看起来很荒谬。
或者像你一样将 table 视图固定到超级视图的顶部,并将 contentInset
属性 设置为条的高度(如果你想要半透明,这很有用导航栏并在滚动时查看导航栏下的单元格)。您可以在代码或情节提要中执行此操作:
我已将 TableView 添加到我的 ViewController。
我设置了这样的约束:
然而,当我 运行 项目的第一个单元格顶部(如 40px)位于 NavigationBar 后面时:
我在这里做错了什么?为什么 TableView 在 navigationControllerBar 后面?
您没有考虑使用约束的导航栏。将顶部约束设置为 50。
由于界面构建器中的场景没有导航栏 - 约束没有考虑它并且视图上的 y(顶部)设置为 0,没有导航栏。
要么将顶部约束设置为 50,要么在视图中放置一个栏并为其设置顶部约束。
不要只将约束设置为 50,这在很多层面上都是错误的。
约束 table 视图的视图控制器的顶部到顶部布局指南。这也将为您处理轮换。在横向导航栏可能有较小的高度,这也说明了这一点。如果将它设置为 50,它可能看起来很荒谬。
或者像你一样将 table 视图固定到超级视图的顶部,并将 contentInset
属性 设置为条的高度(如果你想要半透明,这很有用导航栏并在滚动时查看导航栏下的单元格)。您可以在代码或情节提要中执行此操作: