4

В моем приложении iPhone у меня есть панель поиска и контроллер отображения поиска. Когда пользователь вводит что-то в поле поиска, табличное представление загружается и теперь видно. Когда пользователь нажимает на строку, я хотел бы избавиться от tableView и вернуться к представлению, в котором пользователь первоначально нажал панель поиска. Я искал всю документацию, я не могу найти, как это сделать. Я пробовал [tableView setHidden:YES];, но когда пользователь снова нажимает на панель поиска, таблицаView никогда не возвращается.Как скрыть UITableView, созданный UISearchBar?

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { 
    [tableView deselectRowAtIndexPath:indexPath animated:NO]; 
} 

Возможно, кто-то укажет меня в правильном направлении.

ответ

1

вы можете попробовать, как

[mySerchDisplayController setActive:NO animated:YES]; 
+0

Я уже пробовал, что он просто скрывает клавиатуру, UITableView все еще там. – kylef

+0

Я обновил сообщение – Morion

+0

Это тоже не сработало. – kylef

1

Почему вы не просто удалить вид таблицы с точки зрения иерархии?

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { 
    [tableView deselectRowAtIndexPath:indexPath animated:NO]; 

    // update your model based on the current selection 

    [tableView removeFromSuperview]; 
} 
+0

Использование: [tableView removeFromSuperview]; [поискBar resignFirstResponder]; [поискBar setText: nil]; Это удаляет клавиатуру и табличное представление, но я остаюсь с кнопкой «Отмена», все еще находящейся рядом с UISearchBar. Спасибо за помощь до сих пор. Невозможно удалить эту кнопку отмены? – kylef

Смежные вопросы