У меня есть UITableView
с панелью поиска UISearchController
в UINavigationBar
, все работает отлично, но когда я нажимаю результат результатов поиска UISearchController
, и я возвращаюсь, UITableView находится под NavBar
, так я инициализирую UISearchController
:
self.searchController = [[UISearchController alloc] initWithSearchResultsController:nil];
self.searchController.delegate = self;
self.searchController.searchResultsUpdater = self;
self.searchController.searchBar.delegate = self;
self.searchController.dimsBackgroundDuringPresentation = NO;
self.searchController.hidesNavigationBarDuringPresentation = NO;
self.searchController.searchBar.placeholder = NSLocalizedString(@"Local Search", @"");
self.searchController.searchBar.frame = CGRectMake(0, -5, [UIScreen mainScreen].bounds.size.width, 44);
ctrl = [[UIView alloc] initWithFrame:CGRectMake(0, 0,[UIScreen mainScreen].bounds.size.width, 44)];
ctrl.backgroundColor = [UIColor clearColor];
ctrl.autoresizingMask = UIViewAutoresizingFlexibleWidth;
[ctrl addSubview:self.searchController.searchBar];
self.navigationItem.titleView = ctrl;
self.definesPresentationContext = YES;
Строка поиска отлично отображается в UINavigationBar
, затем, когда я что-то ищу, и я нажимаю контроллер представления для одного результата следующим образом:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
[self.tableView deselectRowAtIndexPath:indexPath animated:YES];
DetailListController *detailList = [[DetailListController alloc] init];
[self.navigationController pushViewController:detailList animated:YES];
}
когда я вернусь к UITableView
, сделав это:
[self.navigationController popViewControllerAnimated:YES];
UITableView
находится под UINavigationBar
, как я могу это исправить?
спасибо