1

我有一个带有标准UITableView的UIViewController和添加了Search委托的搜索栏。该视图在导航栏中有一个分段控件,当用户更改分段控件时,我想隐藏searchBar。隐藏UITableView 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]; 
    } 


} 

的代码隐藏搜索栏很好,但它也使表格视图顶部讨厌的白色空间....如何得到任何想法摆脱它???

感谢

回答

6

此代码解决了这个问题:

- (void)segChange { 
    if ([segmentedControl selectedSegmentIndex] == 0) { 
     [self.myTableView setTableHeaderView:nil]; 
    } 
    else { 
     [self.myTableView setTableHeaderView:[[self searchDisplayController] searchBar]]; 
    } 
} 
+0

正是我在找的!谢谢......像魅力一样工作! – 2015-10-22 14:38:18

1

而不是隐藏分段控制尝试它的框架设置为CGRectZero

+0

谢谢您的回答。分段控制器在导航栏中,我试图隐藏搜索栏。我尝试将searchBar设置为CGRectZero,但是这也不起作用。 – KSoza 2010-11-11 09:40:56