【问题标题】:Make UITableView scroll under manually placed UINavigationBar使 UITableView 在手动放置的 UINavigationBar 下滚动
【发布时间】:2014-05-31 19:36:23
【问题描述】:

我有一个类型为 UIViewController 的模态视图控制器。在这个控制器上,我有两个控件; UINavigationBar 和 UITableView。它们使用自动布局放置,其中 UITableView 的顶部边缘等于 UINavigationBar 的底部边缘。当我滚动表格视图时,我想看到 UINavigationbar 下的表格视图滚动(导航栏的 alpha 设置为 0.96f,它适用于导航控制器提供导航栏的所有其他地方。)

我假设我现在看不到它,因为表格视图的顶部边缘等于 uinavigation 栏的底部边缘,所以我认为这就是它不在 UINavigationBar 下方的原因。

那么,如何让 UITableView 在滚动时进入 UINavigationBar 下方?

【问题讨论】:

    标签: objective-c uitableview uinavigationbar


    【解决方案1】:

    我假设我现在看不到它,因为表格视图的顶部边缘等于 uinavigation 栏的底部边缘,所以我认为这就是它不在 UINavigationBar 下方的原因。

    正确。因此,如果这不是您想要的,请不要这样做。使用Bring to Front 确保导航栏位于表格视图的前面(但不是它的子视图)。然后更改自动布局约束,以便将表格视图的顶部固定到顶部布局指南。导航栏的顶部也固定在顶部布局指南上,因此现在表格视图位于导航栏下方。

    现在您将遇到滚动定位和滚动指示器在表格视图中的位置问题 - {0.0} 的内容偏移量将隐藏导航栏下的第一个单元格 - 但您可以通过调整表格视图的内容插图和滚动指示器插图。

    【讨论】:

    • 谢谢。我认为这是要走的路。在我按照您建议的方向工作后,我会接受它(现在,导航栏变得完全透明——我可以看到“完成”按钮,只是解决这个问题)。
    猜你喜欢
    • 1970-01-01
    • 2014-05-13
    • 2011-08-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多