我有一个带有标准UITableView和搜索栏的UIViewController,其中添加了搜索委托。视图在导航栏中有一个分段控件,当用户更改分段控件时我想隐藏searchBar。
我使用的代码是:
- (void)segChange {
if ([segmentedControl selectedSegmentIndex] == 0) {
[[[self searchDisplayController] searchBar] setHidden:YES];
// This does not work:
[[[self searchDisplayController] searchResultsTableView] setContentOffset:CGPointZero animated:NO];
}
else {
[[[self searchDisplayController] searchBar] setHidden:NO];
}
}
代码隐藏了searchBar,但它在表格视图的顶部留下了一个令人讨厌的空白区域....任何关于如何摆脱它的想法???
由于
答案 0 :(得分:6)
此代码解决了问题:
- (void)segChange {
if ([segmentedControl selectedSegmentIndex] == 0) {
[self.myTableView setTableHeaderView:nil];
}
else {
[self.myTableView setTableHeaderView:[[self searchDisplayController] searchBar]];
}
}
答案 1 :(得分:1)
尝试将其框架设置为CGRectZero