iphone скрыть результаты UISearchDisplayController? - PullRequest
3 голосов
/ 06 сентября 2010

В настоящее время у меня UISearchBar и UISearchDisplayController реализованы как:

- (void) viewDidLoad {

 videoList = [[NSMutableArray alloc]init];

 //Add the search bar
 aSearchBar = [[UISearchBar alloc] initWithFrame:CGRectZero];
    [aSearchBar sizeToFit];
 aSearchBar.delegate = self;
    aSearchBar.placeholder = @"Search YouTube...";

    self.tableView.tableHeaderView = aSearchBar;

    searchDC = [[UISearchDisplayController alloc] initWithSearchBar:aSearchBar contentsController:self];

    [self performSelector:@selector(setSearchDisplayController:) withObject:searchDC];

    searchDC.delegate = self;
    searchDC.searchResultsDataSource = self.tableView.dataSource;
    searchDC.searchResultsDelegate = self.tableView.delegate;

    [aSearchBar release];
    [searchDC release];

}

Когда пользователь вводит что-то и нажимает кнопку поиска, табличное представление появляется поверх табличного представления в фоновом режиме.

Есть ли способ скрыть этот 'searchResults tableView'? (Я просто хочу, чтобы фоновая таблица содержала данные .. что в настоящее время делает).

т.е. есть собственность? например searchDisplayController.tableView.visible = NO или аналогичный?

Ответы [ 3 ]

12 голосов
/ 29 ноября 2012

Это, однако, не отменяет интерфейс поиска (панель поиска и кнопка «отмена»). Следующий код делает это:

    [self.searchDisplayController setActive:NO animated:YES];
2 голосов
/ 06 сентября 2010
searchDC.searchResultsTableView.hidden=YES;
0 голосов
/ 27 октября 2014

[[UISearchBar alloc] initWithFrame: CGRectZero];

не используйте CGRectZero self.searchBar = [[UISearchBar alloc] initWithFrame: CGRectMake (0, 0, self.table.frame.size.width, 44)];

попробуйте

...