搜索栏和导航栏之间的边距错误

时间:2016-11-28 14:42:08

标签: swift3 uisearchbar xcode8 uisearchdisplaycontroller uisearchcontroller

Bug

我不知道为什么会这样。我有一个带有UITableView的UIViewController,我想添加一个搜索栏,用于使用新的UISearchController(Swift 3,Xcode 8.1)查询我的服务器。 我尝试过在“界面”构建器中添加搜索栏,将搜索栏背景设置为UIImage,但没有任何效果。

这是视图控制器的类准系统:

class MyViewController: UIViewController {
  var searchController = UISearchController(searchResultsController: nil)

  fileprivate func setupSearchController() {
    searchController.searchResultsUpdater = self
    searchController.dimsBackgroundDuringPresentation = false
    searchController.searchBar.barTintColor = .myColor()
    searchController.searchBar.tintColor = .white
    searchController.searchBar.backgroundColor = .myColor()
    searchController.searchBar.placeholder = "searchSomething"
    searchController.searchBar.delegate = self
    definesPresentationContext = true
    tableView.tableHeaderView = searchController.searchBar
  }
}

extension MyViewController: UISearchResultsUpdating, UISearchBarDelegate {
  // delegates methods...
}

也许它与我的设计模式有关,但我不确定UISearchController是否真的是新的,我还没有在网上找到任何有关其使用的好例子。

1 个答案:

答案 0 :(得分:0)

您可以在搜索栏周围设置与导航相同的红色。

    searchBar.layer.borderColor = (your red color).cgColor
    searchBar.layer.borderWidth = 1