我已向我的titleView
添加了自定义UINavigationItem
,其中包含一个旨在位于状态栏下的视图。它看起来很好,当我推动另一个viewcontroller并且在标准的从右到左动画中转换它看起来很好。但是,当我[self.navigationController popViewControllerAnimated:YES]
时,它会剪切此视图的顶部,直到动画结束。请参阅附图,以便更好地解释问题。
只有在完成流行动画之后,它才会再次显示正常。我已经尝试了我能想到的一切。在cropsToBounds
和NO
的所有观看次数上将viewController
设为navigationBar
。我也尝试了layer.masksToBounds
以及几乎所有听起来很熟悉的财产。我添加了一个计时器,用于打印navigationBar的框架矩形和自定义titleView
,并且它们似乎没有更改任何内容。
有人知道我做错了吗?
答案 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?