Я бы хотел показать строку поиска, когда пользователь нажимает кнопку поиска. Я обнаружил, что многие люди используют смещение, чтобы скрыть панель поиска при запуске. Однако есть ли способ скрыть его, что-то вроде свойства .hidden?Полностью скрыть строку поиска
Это подход смещения, но панель поиска по-прежнему там временно смещается наружу. Я бы хотел, чтобы он действительно исчез, если только не понадобится.
Я предполагаю, что другой подход заключается в создании нового контроллера представлений и его запуске при нажатии кнопки поиска, но это дополнительные накладные расходы. Особенно, поскольку у меня есть несколько этих табличных представлений. Thx для любых идей.
in ViewDidLoad:
UISearchBar *searchBar;
searchBar = [[UISearchBar alloc] initWithFrame:CGRectMake(0, 70, 320, 44)];
searchBar.showsCancelButton = YES;
searchBar.delegate = self;
self.tableView.tableHeaderView = searchBar;
In viewWillAppear:
[self.tableView setContentOffset:CGPointMake(0.0, self.tableView.tableHeaderView.frame.size.height) animated:YES];
UISearchBar подкласс UIView поэтому он также .hidden свойство – azimov
Вы также можете аннулировать или удалить SearchBar из self.tableView.tableHeaderView – azimov
Это один из способов сделать это, не выходя из пустого пространства. http://stackoverflow.com/questions/24593599/how-to-animate-add-uisearchbar-on-top-of-uinavigationbar – Adrian