2016-09-27 9 views
2

У меня есть простой tableViewController, a searchBar с областями и navigationBar.Пустое пространство между SearchBar и NavigationBar - Swift

Когда я нажимаю на свой searchBar, я вижу свои области и все работает. Затем я нажимаю на строку, и я иду на свой DetailPage, и панель поиска не скрыта (я не знаю почему).

Поэтому я нажимаю отменить, а затем я возвращаюсь к своему tableView. Когда я вернусь к моему табличному виду, между моим SearchBar и моим NavigationBar будет пустое пространство.

Blank space

Это мой код:

 self.resultSearchController = ({ 
      let controller = UISearchController(searchResultsController: nil) 
      controller.searchResultsUpdater = self 
      controller.hidesNavigationBarDuringPresentation = true 
      controller.dimsBackgroundDuringPresentation = false 
      controller.searchBar.sizeToFit() 
      controller.searchBar.scopeButtonTitles = ["Title", "Author", "Location", "Price", "User"] 
      self.tableView.tableHeaderView = controller.searchBar 
      return controller 
     })() 

func updateSearchResults(for searchController: UISearchController) 
    { 
     let scopes = resultSearchController.searchBar.scopeButtonTitles 
     let currentScope = scopes![resultSearchController.searchBar.selectedScopeButtonIndex] as String 
     filterContentForSearchText(searchText: searchController.searchBar.text!, scope: currentScope) 
    } 
+0

Я думаю, что настроить ScrollView Insets на false работает для вас ... ваш контролер атрибута контроллера снимите флажок в настройке ScrollView Insets –

+0

Я попытался, но результат тот же – Carlo

+0

Вы определили, какая сущность учитывает маржу, регистрируя 'frames' ? (_header, insets, searchbar_) Что отделяет ваш код в 'viewDidLoad' от' viewWill/DidAppear'? – Aerows

ответ

3

пытаются добавить

self.automaticallyAdjustsScrollViewInsets = false; 

    self.extendedLayoutIncludesOpaqueBars = true 

в viewDidload.

+0

Ничего. Ошибка такая же. Каждый раз, когда я перехожу на мою страницу подробностей после использования панели поиска с областями, между навигационной панелью и табличным представлением добавляется пустое пространство – Carlo

+0

, попробуйте добавить одну пустую метку в свой основной вид (над вашей панелью поиска - то есть ваша метка должна быть первым элементом управления в вашей иерархии просмотров) – Lion

+0

Я решил поблагодарить – Carlo