2015-01-09 4 views
3

Я пытаюсь отобразить простой экран поиска для своего приложения iphone с помощью UISearchController. я использовал UITableViewController и UISearchController что я внедренный внутри UINavigationControllerIOS8 UISearchController непосредственно отображает строку поиска

  • Это принеси мне следующий экран (состояние 1)

searchcontroller with navigation bar

  • Когда пользователь нажимает на поле поиска, я получаю экран ниже (состояние 2): Строка поиска хорошо отображается в верхней части экрана под строкой состояния.

searchcontroller activated

То, что я хочу сделать, это получить состояние 2 сразу, не вдаваясь в состояние 1

Я пытался добавить этот код

presentViewController(searchController, animated: true, completion: nil) 

но он либо не отображает строку поиска, если анимированная ложь, либо отображает ее так, как я хочу, но после ненужной трассировки nsition что temporaryly показывает навигационную панель

+0

Вы вопрос имеет не имеет смысла. _You_ - это тот, кто положил поле поиска в виде заголовка представления таблицы, чтобы начать с (состояние 1). Если это не то, что вы хотели, зачем вы это делали? Если вы хотите, чтобы в поле поиска отображалась панель навигации, почему бы вам не поместить ее в навигационную панель? – matt

ответ

6

Хорошо, я только что нашел, как это сделать чтение этого ответа UISearchController in a UIViewController

мне просто нужно добавить SearchBar как это, чтобы получить желаемый эффект

searchController.hidesNavigationBarDuringPresentation = false 
    // tableView.tableHeaderView = searchController.searchBar 
    navigationItem.titleView = searchController.searchBar 
+0

Возможно, вы захотите принять свой собственный ответ – Besi

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