Swift:navigationItem.hideseArchBar在滚动=true时仍可见搜索栏

Swift:navigationItem.hideseArchBar在滚动=true时仍可见搜索栏,swift,visible,searchbar,swift4.2,Swift,Visible,Searchbar,Swift4.2,在Swift中,我试图实现一个隐藏的搜索栏,当滚动时,它会变得可见 我在用这个 navigationItem.searchController = searchController navigationItem.hidesSearchBarWhenScrolling = true 我已经尝试过移动上面的代码,但无论如何,搜索栏都是可见的,无论它在ViewController文件中的何处调用 是否存在可以覆盖此功能的内容? 文件中我引用搜索栏或搜索控制器的唯一其他代码如下: if self.se

在Swift中,我试图实现一个隐藏的
搜索栏
,当滚动时,它会变得可见

我在用这个

navigationItem.searchController = searchController
navigationItem.hidesSearchBarWhenScrolling = true
我已经尝试过移动上面的代码,但无论如何,
搜索栏
都是可见的,无论它在
ViewController
文件中的何处调用

是否存在可以覆盖此功能的内容? 文件中我引用
搜索栏
搜索控制器
的唯一其他代码如下:

if self.searchController.isActive && searchController.searchBar.text != "" {...

self.searchController.searchBar.placeholder = "Search \(title)"

func updateSearchResults(for searchController: UISearchController) {

if let searchText = searchController.searchBar.text, !searchText.isEmpty {
        filteredArr = defaultArr.filter {...

func configureSearchController () {

    //Setup the Search Controller
    searchController.searchResultsUpdater = self
    searchController.hidesNavigationBarDuringPresentation = true
    searchController.dimsBackgroundDuringPresentation = false
    searchController.searchBar.searchBarStyle = .minimal
    searchController.definesPresentationContext = true
    navigationItem.searchController = searchController
    navigationItem.hidesSearchBarWhenScrolling = true 
}

// I call reloadData a few times throughout as well
tableView.reloadData()
我不确定当滚动=true时,上述任何一项会如何影响
hidesearchbar

我很困惑这是怎么发生的,有人有什么建议吗

任何帮助都将不胜感激

导致问题的标签位于tableView的“后面”:

搜索栏始终可见:

按预期隐藏搜索栏:


请添加屏幕截图好吗?我已经用显示行为的gif进行了编辑,您可以在
UITableView
中尝试20-25行吗?无论
UITableView
中有多少项,
UIsearchBar
仍然是静态的,并且仍然可见。我尝试了20-25、50等。tableView“后面”的标签导致了问题:搜索栏始终可见:搜索栏按预期隐藏: