我已阅读过多篇关于Autolayout的帖子以及iOS 7中的状态栏行为,但仍然不知道如何让我的Autolay-ed out对象位于状态栏下方。
我目前有
self.automaticallyAdjustsScrollViewInsets = YES;
self.edgesForExtendedLayout = UIRectEdgeNone;
并且搜索栏的视觉格式应用为V:|-0-searchBar-|
。
搜索栏在状态栏下呈现如下 如预期的那样。
我无法找到解决方案让搜索栏从状态栏的底部边缘开始。怎么办呢?
编辑:我查看了顶部布局选项,但我的自定义视图控制器有一个xib。没有顶级布局指南。我该如何支持此设置?我想避免检查系统版本。
答案 0 :(得分:1)
您需要使用{{1}}。
Apple在此问题上提供了很好的指南:https://developer.apple.com/library/ios/qa/qa1797/_index.html
答案 1 :(得分:0)
我能够通过遵循此answer以编程方式访问热门指南。我使用XIB作为我的自定义类,因此无法通过图形界面构建器访问topLayoutGuide
,如下所示。
相反,topLayoutGuide
可以通过[self topLayoutGuide]
访问,其中self是UIViewController
。 Documentation link
if ([self respondsToSelector:@selector(topLayoutGuide)]) {
id topGuide = [self topLayoutGuide];
NSDictionaryOfVariableBindings(topGuide ...