'hideUISearchBarWhenScrolling' - 属性不能与tableView一起使用属性

时间:2017-09-25 09:22:04

标签: swift tableview uisearchbar ios11 swift4

我使用了新的Swift4 / iOS11可能性,并且遇到了hideSearchBarWhenScrolling无法使用tableView作为UIViewController中的属性的问题。

在UITableViewController中它的工作方式应该可行。

我做错了什么?有人发出了同样的问题并且有解决方案吗?

class AddController: UIViewController {

    let tableView: UITableView = {
        let tv = UITableView()
        tv.translatesAutoresizingMaskIntoConstraints = false
        return tv
    }()
    let searchController = UISearchController(searchResultsController: nil)

    override func viewDidLoad() {
        navigationItem.title = "Heading"
        navigationItem.searchController = searchController
        navigationController?.navigationBar.prefersLargeTitles = true
    }

    override func viewWillLayoutSubviews() {
        view.addSubview(tableView)

        NSLayoutConstraint.activate([
            tableView.leftAnchor.constraint(equalTo: view.leftAnchor),
            tableView.topAnchor.constraint(equalTo: view.safeAreaLayoutGuide.topAnchor),
            tableView.rightAnchor.constraint(equalTo: view.rightAnchor),
            tableView.bottomAnchor.constraint(equalTo: view.safeAreaLayoutGuide.bottomAnchor)
        ])
    }
}

由于

1 个答案:

答案 0 :(得分:0)

像这样使用:

navigationItem.hidesSearchBarWhenScrolling