UINavigationBar剪辑顶级内容

时间:2014-01-11 11:49:09

标签: ios ios7 uinavigationbar uistatusbar

我已向我的titleView添加了自定义UINavigationItem,其中包含一个旨在位于状态栏下的视图。它看起来很好,当我推动另一个viewcontroller并且在标准的从右到左动画中转换它看起来很好。但是,当我[self.navigationController popViewControllerAnimated:YES]时,它会剪切此视图的顶部,直到动画结束。请参阅附图,以便更好地解释问题。

只有在完成流行动画之后,它才会再次显示正常。我已经尝试了我能想到的一切。在cropsToBoundsNO的所有观看次数上将viewController设为navigationBar。我也尝试了layer.masksToBounds以及几乎所有听起来很熟悉的财产。我添加了一个计时器,用于打印navigationBar的框架矩形和自定义titleView,并且它们似乎没有更改任何内容。

有人知道我做错了吗?

the problem

1 个答案:

答案 0 :(得分:2)

两种方法:

    if ([self respondsToSelector:@selector(setEdgesForExtendedLayout:)]) { // if iOS 7
    self.edgesForExtendedLayout = UIRectEdgeNone; //layout adjustements
}

您需要设置视图控制器的Delta。从公用事业区切换故事板到ios6.1或更高版本(第1项)。然后选择Vc的视图,在实用程序区域中的尺寸检查器菜单中,框架下方将显示增量部分。每个三角洲之前都会有三角形。三角形到64(您应该在故事板的ios6.1或更高版本上)。

如果您需要关于Deltas的帮助,请访问: Interface Builder: What are the UIView's Layout iOS 6/7 Deltas for?