繁体   English   中英

导航栏IOS 11中的SearchBar

[英]SearchBar in NavigationBar IOS 11

我尝试使用导航栏大标题并将搜索栏添加到导航控制器。 搜索栏显示在导航标题下。 在我向下滑动之前,它应该是隐藏的。 我了解默认行为是隐藏的,除非我设置为“ navigationItem.hidesSearchBarWhenScrolling = false”。 即使我添加了“ navigationItem.hidesSearchBarWhenScrolling = true”,它也不起作用。

我创建了一个新应用来测试此功能。 它嵌入了ViewController和Navigation Controller。 下面是我的代码:

class ViewController: UIViewController {

    let searchController = UISearchController(searchResultsController: nil)

    override func viewDidLoad() {
        super.viewDidLoad()

        navigationController?.navigationBar.prefersLargeTitles = true
        navigationItem.searchController = searchController
        // navigationItem.hidesSearchBarWhenScrolling = true

    }
}

我遇到过类似情况。 我已经这样解决了:

1-删除有关searchController的所有内容

2-将UISearchBar控件添加到表中

在此处输入图片说明

3-将此searchBar控件连接到IBOutlet变量并设置委托

searchBar.delegate = self

4-仅使用UISearchBarDelegate(删除UISearchResultsUpdating)并实现textDidChange方法

func searchBar(_ searchBar: UISearchBar, textDidChange searchText: String) {
    filter...
    reload table...
}

该表格标题搜索栏适用于iOS 11和更早版本

暂无
暂无

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

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