2016-08-29 4 views
2

내 탐색 막대의 오른쪽에 UISearchController에 의해 관리되는 검색 막대를 추가하고 싶습니다. 탐색 모음에 검색 막대를 추가하는 방법

searchController.searchResultsUpdater = self 
    searchController.dimsBackgroundDuringPresentation = false 
    definesPresentationContext = true 
    searchController.searchBar.placeholder = "Search" 
    searchController.searchBar.searchBarStyle = .Minimal 
    searchController.searchBar.frame = CGRect(x: 0, y: 0, width: 200.0, height: 44.0) 
    searchController.hidesNavigationBarDuringPresentation = false 
    navigationItem.rightBarButtonItem = UIBarButtonItem(customView: searchController.searchBar) 

내가 (다른 모든 중복 동안)은 전체 탐색 모음을 커버 (그래서이 활성화 될) 검색 창 대신 작은 부분에 탭

. 프레임을 수정하려면 어떻게해야합니까?

+1

개체 라이브러리에서 UIView를 내비게이션 막대로 끌어다 놓은 다음 'UISearchController'를 UIView로 끌어다 놓으려고 했습니까? ... 시도하지 않았기 때문에 작동해야하는지 잘 모르겠습니다. – Andrej

+0

개체 팔레트에서 UISearchController를 사용할 수 없습니다. 하지만 UIView 내부에 검색 표시 줄을 래핑하는 것은 좋은 생각 인 것 같습니다. 체크 아웃하겠습니다. – David

+0

UIView에서 검색 막대를 줄 바꿈하는 것이 트릭입니다. 고맙습니다 :) – David

답변

3

UIView에서 검색 창을 감추는 것이 트릭을 수행하는 것 같습니다.

searchController.searchBar.frame = CGRect(x: 0, y: 0, width: 200.0, height: 44.0) 
    let barContainer = UIView(frame: searchController.searchBar.frame) 
    barContainer.backgroundColor = UIColor.clearColor() 
    barContainer.addSubview(searchController.searchBar) 
    navigationItem.rightBarButtonItem = UIBarButtonItem(customView: barContainer)