Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 滚动时搜索栏消失_Ios_Swift_Uitableview_Uisearchbar_Uisearchcontroller - Fatal编程技术网

Ios 滚动时搜索栏消失

Ios 滚动时搜索栏消失,ios,swift,uitableview,uisearchbar,uisearchcontroller,Ios,Swift,Uitableview,Uisearchbar,Uisearchcontroller,我读过一些堆栈溢出的帖子,但没有任何效果。我有一个简单的问题,应该不难解决。我必须阻止搜索栏在它所连接的tableview上滚动时消失 我试过: 将tableview设置为.plain以使标题视图具有粘性,但这不起作用 我尝试了navigationItem.HideseArchBarWhenScrolling=false,但这可能不起作用,因为searchController.searchBar被设置为等于tableView.tableViewHeader 这是我的viewDidLoad,如果确

我读过一些堆栈溢出的帖子,但没有任何效果。我有一个简单的问题,应该不难解决。我必须阻止搜索栏在它所连接的tableview上滚动时消失

我试过:

  • 将tableview设置为.plain以使标题视图具有粘性,但这不起作用
  • 我尝试了navigationItem.HideseArchBarWhenScrolling=false,但这可能不起作用,因为searchController.searchBar被设置为等于tableView.tableViewHeader
  • 这是我的viewDidLoad,如果确实可行,它应该包含相关代码:

    override func viewDidLoad() {
        super.viewDidLoad()
        tableView.delegate = self
        tableView.dataSource = self
        tableView.separatorStyle = .none
        tableView.backgroundColor = UIColor.init(red: 240/255, green: 246/255, blue: 243/255, alpha: 1)
        tableView.register(SearchTableViewCell.self, forCellReuseIdentifier: "SearchTVC")
        searchController.searchResultsUpdater = self
        searchController.dimsBackgroundDuringPresentation = false
        searchController.searchBar.delegate = self
        definesPresentationContext = true
        navigationController?.navigationBar.isHidden = true
        tableView.tableHeaderView = searchController.searchBar
        searchController.searchBar.tintColor = .darkGray//UIColor.white
        searchController.searchBar.barTintColor = UIColor.convertHexColor(hex: "eaeaea")
        navigationItem.hidesSearchBarWhenScrolling = false
        searchController.hidesNavigationBarDuringPresentation = false
        searchController.searchBar.text = ""
        addConstraints()
        presentInitialView()
    }
    

    尝试设置
    navigationItem.searchController=searchController
    而不是
    tableView.tableHeaderView=searchController.searchBar
    谢谢,当我尝试时,由于某种原因导致搜索栏消失。这绝对是合乎逻辑的。如果我将导航栏的isHidden属性设置为false,这一点不会改变。请尝试设置
    navigationItem.HideseArchBarWhenScrolling=false
    ,这仍然会导致搜索栏永远不会出现。