我试图隐藏在iOS 7表视图控制器中附加到UITableView的searchDisplay控制器。我不想暂时将它从顶部滚动;我希望它完全禁用。永久隐藏UISearchDisplayController
在我的表视图控制器代码(这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中隐藏搜索栏,并实际占用空间,就好像它不在第一个那样?
您是否想过检查搜索显示是否实际隐藏?例如if(self.searchDisplayController.searchBar.hidden){//使帧= 0; } else {// make frame = 44}然后设置低于那个的帧 – user2277872
我在基于standardUserDefaults值的if语句中设置隐藏属性。我曾尝试在设置隐藏属性的同一if语句中设置searchBar的框架;我仍然有缺失的拉到刷新指示器的副作用。 – Nick