繁体   English   中英

使用iOS 7顶部布局指南

[英]Work with iOS 7 top layout guide

我正在故事板中设计一个视图控制器。 它在顶部包含一个导航栏,并包含一个内容视图。 我将约束设置为

  • 导航栏的顶部空间到顶部布局指南= 0
  • 内容视图将填充剩余的空间(超级视图的前导和尾随空间= 0;超级视图的底部空间= 0,导航栏的顶部空间= 0)

因为我要显示状态栏,所以我使用顶部布局指南来使导航栏显示在其下方。 它与标准UINavigationBar一起使用。
但是我有自定义的导航栏:我创建了自己的类,继承了UINavigationBar。

问题是:在界面构建器的“身份检查器”中为导航栏指定此自定义类时,在运行应用程序时导航栏不在正确的位置。

initWitFrameinitWithCoder是否有任何要添加或修改的initWitFrame ,或者要执行其他操作,因此我的自定义导航栏将遵循情节initWitFrame的约束。

编辑 -已添加源

- (id)initWithFrame:(CGRect)frame
{
    self = [super initWithFrame:frame];
    if (self) {
        // additional setup
    }
    return self;
}

- (id)initWithCoder:(NSCoder *)aDecoder
{
    self = [super initWithCoder:(NSCoder *)aDecoder];
    if (self) {
        // same setup than initWithFrame:
    }
    return self;
}

- (void)drawRect:(CGRect)rect
{
    //[self setFrame:rect]; navigation bar is not at the right place if uncommented
}

为什么调用[self setFrame:rect]; frame已正确设置,请勿更改它。 另外, rect在导航栏的内部坐标系中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM