UITableViewControllerコンテンツビューコントローラーとしてa を持つポップオーバーがあります。テーブル ビューには、UISearchBarヘッダー ビューとして があります。
iOS 6 では、UISearchDisplayControllerがアクティブになるとすべてが正常に表示されます。ただし、iOS 7 では、検索バーの上に余分なスペースがあります。

では、iOS 7 の検索バーの上にあるこの余分なスペースを取り除くにはどうすればよいでしょうか?
UITableViewControllerコンテンツビューコントローラーとしてa を持つポップオーバーがあります。テーブル ビューには、UISearchBarヘッダー ビューとして があります。
iOS 6 では、UISearchDisplayControllerがアクティブになるとすべてが正常に表示されます。ただし、iOS 7 では、検索バーの上に余分なスペースがあります。

では、iOS 7 の検索バーの上にあるこの余分なスペースを取り除くにはどうすればよいでしょうか?
解決策は、 のプロパティedgesForExtendedLayoutをに設定するUITableViewControllerことUIRectEdgeNoneです。
- (void)viewDidLoad {
[super viewDidLoad];
if ([self respondsToSelector:@selector(edgesForExtendedLayout)]) { /// iOS 7 or above
self.edgesForExtendedLayout = UIRectEdgeNone;
}
}
このプロパティの値UIRectEdgeAll はデフォルトです。つまり、ビューのすべての端が拡張されて、ステータス バー用の余分なスペースが確保されます (検索バーの上のスペースの高さは、ステータス バーの高さと同じ 20px です)。