将Autolayout置于状态栏下方

时间:2015-05-25 02:52:22

标签: ios cocoa format autolayout

我已阅读过多篇关于Autolayout的帖子以及iOS 7中的状态栏行为,但仍然不知道如何让我的Autolay-ed out对象位于状态栏下方。

我目前有

self.automaticallyAdjustsScrollViewInsets = YES;
self.edgesForExtendedLayout = UIRectEdgeNone;

并且搜索栏的视觉格式应用为V:|-0-searchBar-|

搜索栏在状态栏下呈现如下 enter image description here 如预期的那样。

我无法找到解决方案让搜索栏从状态栏的底部边缘开始。怎么办呢?

编辑:我查看了顶部布局选项,但我的自定义视图控制器有一个xib。没有顶级布局指南。我该如何支持此设置?我想避免检查系统版本。 ib screenshot

2 个答案:

答案 0 :(得分:1)

您需要使用{{1}}。

Apple在此问题上提供了很好的指南:https://developer.apple.com/library/ios/qa/qa1797/_index.html

答案 1 :(得分:0)

我能够通过遵循此answer以编程方式访问热门指南。我使用XIB作为我的自定义类,因此无法通过图形界面构建器访问topLayoutGuide,如下所示。

ib screenshot 相反,topLayoutGuide可以通过[self topLayoutGuide]访问,其中self是UIViewControllerDocumentation link

if ([self respondsToSelector:@selector(topLayoutGuide)]) {
    id topGuide = [self topLayoutGuide];
    NSDictionaryOfVariableBindings(topGuide ...