У меня есть UISearchBar и его соответствующий контроллер отображения поиска, выложенный в xib-файле через InterfaceBuilder.Панель поиска настраивается в Интерфейсном Разработчике, когда флажок «Показывает область видимости» не установлен.Однако, как только текстовая строка начинается в строке поиска и отображается «оверлей поиска», UISearchBar отображается с панелью области действия, имеющей 2 кнопки и их по умолчанию «Заголовок».
Как убедиться, чтоScope Bar не отображается, когда начато редактирование SearchBar?
Я пробовал это из моего класса ViewController, который управляет панелью поиска:
- (void)viewDidLoad
{
UISearchBar *searchBar = self.searchDisplayController.searchBar;
NSLog(@"Scopebar is visible? %@", searchBar.showsScopeBar == YES ? @"YES" : @"NO");
searchBar.showsScopeBar = NO; // Doesn't seem to have an effect
}
#pragma mark - UISearchBarDelegate methods
- (BOOL)searchBarShouldBeginEditing:(UISearchBar *)searchBar
{
[searchBar setShowsScopeBar:NO]; // doesn't seem to work either
return YES;
}
Пример кода Apple, TableSearch, который иллюстрирует поискимеет 4-кнопочную панель видимости после начала поиска.