UISearchDisplayController叠加和条形之间的差距

在我的应用程序中,我正在尝试添加搜索function。 我有表视图控制器和自定义顶栏视图,我在其中显示UISearchBar 。 问题是叠加视图总是位于顶部栏下方,它增加了它们之间的差距:

在此处输入图像描述

在我的表视图中,控制器.m文件的viewDidLoad

 [super viewDidLoad]; LSDropdownViewController *menuCtrl = (LSDropdownViewController *)[self parentViewController]; menuCtrl.topSearchBar.delegate = self; [menuCtrl.topSearchBar setBackgroundColor:[UIColor clearColor]]; [menuCtrl.topSearchBar setBackgroundImage:[UIImage imageWithGradientColors]]; [menuCtrl.topSearchBar setTintColor:[UIColor whiteColor]]; self.searchController = [[UISearchDisplayController alloc] initWithSearchBar:menuCtrl.topSearchBar contentsController:self]; self.searchController.delegate = self; self.searchController.searchResultsDataSource = self; self.searchController.searchResultsDelegate = self; 

有任何想法吗?

这是由于iOS7 +。 因此,要摆脱它,你必须通过偏移y值20像素手动设置搜索栏框,即searchBar.frame = CGRectMake(0,20,宽度,高度)。