我正在尝试在iOS 7表格视图控制器中隐藏连接到UITableView的searchDisplay控制器。我不想暂时将其滚动到顶部;我希望将其完全禁用。
在我的表视图控制器代码(其中,FWIW设置为分组样式because of this)中,我得到了:
self.searchDisplayController.searchBar.hidden = YES;
这确实隐藏了搜索栏,但不幸的是,在我的表格顶部出现了一个空白框:

此空白将滚动出屏幕,就像搜索栏一样。self.searchDisplayController.searchBar.hidden = NO;将如期返回搜索栏。
我尝试使用this question的问题和答案中的建议,将我的表视图上移44像素,这样做是可行的,但它的副作用是隐藏了表格顶部的拉取刷新指示器。
我还尝试将搜索栏的边框设置为没有高度,如下所示:
self.searchDisplayController.searchBar.frame = CGRectMake(0, 0, self.tableView.frame.size.width, 0);但这也不能消除我表格顶部的空白区域。
我如何向UISearchDisplayController隐藏搜索栏,并实际使它所占用的空间折叠,就好像它一开始就不在那里一样?
发布于 2015-08-07 15:46:54
我最终通过链接应用程序的行为绕过了这种奇怪行为的条件来处理这个问题。我不确定这一行为是否在以后的操作系统版本中得到了修复。
https://stackoverflow.com/questions/21841050
复制相似问题