Я не хочу, чтобы UISearchBar
был видимым для пользователя, если не нажата кнопка поиска справа.Скрыть UISearchBar под UINavigationBar при завершении поиска
У меня нет никаких проблем, чтобы переключить UISearchBar
. Я делаю это с помощью следующего кода:
- (void)viewDidLoad{
[super viewDidLoad];
// Hide searchBar
[self.tableView scrollToRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:0] atScrollPosition:UITableViewScrollPositionTop animated:NO];
}
- (IBAction)toggleSearchbar:(id)sender{
NSTimeInterval delay;
if(self.tableView.contentOffset.y > 1000){
delay = 0.4;
} else{
delay = 0.1;
}
[self performSelector:@selector(activateSearch) withObject:nil afterDelay:delay];
}
- (void)activateSearch{
[self.tableView scrollRectToVisible:CGRectMake(0.0, 0.0, 1.0, 1.0) animated:NO];
[self.searchDisplayController.searchBar becomeFirstResponder];
}
Это толкает UINavigationBar
и показывает UISearchBar
. Моя проблема заключается в прекращении поиска. Затем мне нужен обратный эффект. UINavigationBar
должен спуститься сверху и снова накрыть UISearchBar
. Теперь UINavigationBar
спускается сверху и толкает UISearchBar
вниз. Я хочу, чтобы UISearchBar
оставался наверху, так что UINavigationBar
покрывает его при спускании.
Да Я использую 'UISearchDisplayController'. Я попытался сделать '[self.tableView scrollToRowAtIndexPath: [NSIndexPath indexPathForRow: 0 inSection: 0] atScrollPosition: UITableViewScrollPositionTop анимированный: NO];' в 'searchDisplayControllerDidEndSearch:', но это сначала снимает 'UINavigationBar' и' UISearchBar' и когда это сделано, UISearchBar'а оживляет резервное копирование. Я не хочу, чтобы 'UISearchBar' был анимирован с помощью' UINavigationBar'. –