How do I change the height of the search bar? swift

I have it:

http://postimg.cc/image/oepn8hhzd/

and I need this:

http://postimg.cc/image/4bacislw5/

My search bar code

var searchBar:UISearchBar = UISearchBar(frame: CGRectMake(0, 0, 200, 0))


    searchBar.tintColor = UIColor.blueColor()
    self.searchBar.layer.borderColor = UIColor.blueColor().CGColor
    self.searchBar.layer.borderWidth = 0.5
    self.searchBar.layer.cornerRadius = 5.0
    self.searchBar.clipsToBounds = true
    searchBar.placeholder = "Search for cities"
    searchBar.sizeToFit()


    self.searchBar.setImage(UIImage(named: "Search@3x"), forSearchBarIcon: UISearchBarIcon.Search, state: UIControlState.Normal)
    self.searchBar.setImage(UIImage(named: "Close@3x"), forSearchBarIcon: UISearchBarIcon.Clear, state: UIControlState.Normal)

    searchBar.delegate = self


    var leftNavBarButton = UIBarButtonItem(customView: searchBar)
    self.navigationItem.leftBarButtonItem = leftNavBarButton

      

Any ideas? (Sorry for the links, I cannot insert images)

+4


source to share


1 answer


You can use another view as the title of the navigation bar and place the search bar in it.

let searchController = UISearchController(searchResultsController: nil)
searchController.hidesNavigationBarDuringPresentation = false
searchController.dimsBackgroundDuringPresentation = false
searchController.searchBar.delegate = self

let frame = CGRect(x: 0, y: 0, width: 100, height: 44)
let titleView = UIView(frame: frame)
searchController.searchBar.backgroundImage = UIImage()
searchController.searchBar.frame = frame
titleView.addSubview(searchController.searchBar)
navigationItem.titleView = titleView

      



Hope this helps.

+3


source







All Articles