我已经向我的ViewController添加了一个TableView。
然而,当我运行项目时,第一个单元格的顶部(如40px)位于NavigationBar的后面:
我在这里做错了什么?为什么TableView在navigationControllerBar后面?
答案 0 :(得分:5)
不要只将约束设置为50,这在很多级别上都是错误的。
约束表格视图的视图控制器的顶部到顶部布局指南。这也将为你处理轮换。在横向中,导航栏可能具有较小的高度,这也是它的原因。如果你把它设置为50,它可能看起来很荒谬。
或者将表格视图固定在超级视图的顶部,并将contentInset
属性设置为条形高度(如果您想要半透明导航栏并查看导航栏下的单元格,这非常有用你滚动)。您可以在代码或故事板中执行此操作:
答案 1 :(得分:0)
您未使用约束来计算导航栏。将顶部约束设置为50.
由于“界面”构建器中的场景没有导航栏 - 约束不考虑它,并且y(顶部)在视图上设置为0,该视图没有导航栏。
将顶部约束设置为50或在视图中放置一个条形并将顶部约束设置为它。