【问题标题】:UINavigationBar without UINavigationController from Interface BuilderUINavigationBar 没有来自 Interface Builder 的 UINavigationController
【发布时间】:2016-03-20 16:00:54
【问题描述】:

我正在尝试从 Interface Builder(不是 storyBoard)添加 UINavigationBar。

但是,高度仍然是 44。

有一篇文章有​​答案,但那是通过代码。 UINavigationBar without UINavigationController

我做了同样的事情,但来自界面生成器但没有找到工作。界面生成器和模拟器 屏幕截图附在此电子邮件中。 另外,我确实在Controller中添加了以下方法。

那么,Interface builder 有可能吗?

- (UIBarPosition)positionForBar:(id<UIBarPositioning>)bar
{
    return UIBarPositionTopAttached;
}

【问题讨论】:

    标签: ios uinavigationbar


    【解决方案1】:

    虽然它可能违反直觉,但您需要从视图顶部有一个值为20 的约束(该约束应该是 Top Space to: Top Layout Guide) .最后它应该在界面生成器中看起来像这样,但在运行时,导航栏会在顶部添加 20 个点(或我不确定的像素),使其拉伸到屏幕顶部。

    【讨论】:

    • 我认为它只在情节提要中可用。
    • @andyPaul 如果您使用笔尖,只需将导航栏向下移动 20 像素,如果出现问题,请更新自动布局约束。
    • 是的,但是前 20 个像素是橙色的,实际上导航栏的高度应该是 64。
    • @andyPaul 它在 IB 中显示橙色,但是当您运行应用程序时,它会用导航栏填充它。试试看吧。
    猜你喜欢
    • 1970-01-01
    • 2018-08-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-16
    • 1970-01-01
    • 2011-06-04
    • 2012-08-23
    相关资源
    最近更新 更多