2016-09-27 7 views
2

범위가 tableViewController이고 searchBar이고 두 번째 숫자가 navigationBar입니다.SearchBar와 NavigationBar 사이의 공백 - Swift

searchBar을 클릭하면 내 범위와 모든 작동을 볼 수 있습니다. 그런 다음 행을 클릭하면 내 DetailPage으로 이동하고 검색 창은 숨겨지지 않습니다 (이유를 모르겠습니다).

그래서 을 취소 한 다음 내 tableView으로 돌아갑니다. 내 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

시도가 viewDidload

self.automaticallyAdjustsScrollViewInsets = false; 

    self.extendedLayoutIncludesOpaqueBars = true 

를 추가 할 수 있습니다.

+0

아무 것도 없습니다. 오류는 동일합니다. 범위가있는 검색 창을 사용한 후 내 세부 정보 페이지로 이동할 때마다 탐색 모음과 표보기간에 빈 공간이 추가됩니다. – Carlo

+0

기본보기에서 한 번 빈 레이블을 추가하여 시도해보십시오 (검색 막대 위에 - 즉 레이블이 먼저 제어되어야 함) 귀하의보기 계층에서) – Lion

+0

감사를 해결했습니다 – Carlo