9

我有一个带有 aUITableViewController作为内容视图控制器的弹出窗口。表视图有一个UISearchBar作为它的标题视图。

UISearchDisplayController现在,在 iOS 6 上,当激活时一切看起来都很好。但是,在 iOS 7 上,搜索栏上方会有一个额外的空间。

iOS 7 搜索栏上方的额外空间

那么我怎样才能摆脱iOS 7搜索栏上方的这个额外空间呢?

4

1 回答 1

26

解决方案是将 的属性设置edgesForExtendedLayout为。UITableViewControllerUIRectEdgeNone

- (void)viewDidLoad {
    [super viewDidLoad];

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

该属性具有UIRectEdgeAll 默认值。这意味着视图的所有边缘都将被扩展,为状态栏保留额外的空间(搜索栏上方空间的高度正好是 20px,与状态栏的高度相同)。

于 2013-09-22T15:07:52.073 回答