简体   繁体   English

搜索栏未显示在导航栏iOS 11上

[英]Search bar not showing up on the navigation bar iOS 11

I am pushing a viewController where I want a searchBar, but search bar is not showing at all. 我正在推动一个viewController,我想要一个searchBar,但搜索栏根本没有显示。 Below is the code. 下面是代码。 Am I missing something? 我错过了什么吗?

var searchController = UISearchController(searchResultsController: nil)
searchController.searchResultsUpdater = self
searchController.obscuresBackgroundDuringPresentation = false
searchController.searchBar.placeholder = "Search here..."
definesPresentationContext = true
searchController.searchBar.delegate = self
searchController.searchBar.sizeToFit()
if #available(iOS 11.0, *) {

    self.navigationItem.searchController = searchController
} else {
    // Fallback on earlier versions
    navigationItem.titleView = searchController.searchBar
    navigationItem.titleView?.layoutSubviews()
}

You need to add this line to your code: 您需要将此行添加到您的代码中:

navigationItem.hidesSearchBarWhenScrolling = false

That removes hiding searchBar while scrolling and shows it on pushing your view controller. 这会在滚动时删除隐藏的searchBar,并在推动视图控制器时显示它。

所以, navigationItem.hidesSearchWhenScrolling只有当您设置工作searchController财产navigationItem不是当你设置navigationItem.titleViewsearchBar

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM