所以我想要实现的是我想在tableview和导航栏之间添加一个视图。层次结构如下: 顶部导航栏-betweenView-的tableView - 底部。
我尝试了类似这样的东西,但是在视图导航栏下面没有这个,并且tableView上面有一个奇怪的空白区域。任何人都有任何想法?谢谢!
let betweenView = searchController.searchBar
self.view.addSubview(betweenView)
let upperConstraint = NSLayoutConstraint(item: betweenView, attribute: .top, relatedBy: .equal, toItem: self.tableView, attribute: .top, multiplier: 1, constant: (self.navigationController?.navigationBar.frame.height)!)
let lowerConstraint = NSLayoutConstraint(item: self.tableView, attribute: .top, relatedBy: .equal, toItem: searchView, attribute: .bottom, multiplier: 1, constant: 0)
self.view.addConstraint(upperConstraint)
self.view.addConstraint(lowerConstraint)
答案 0 :(得分:0)
你想在这里做两件事:
1)将搜索视图的约束布局到顶部布局指南。这会根据需要将搜索视图移动到导航栏下方:
let upperConstraint = NSLayoutConstraint(item: searchView, attribute: .top, relatedBy: .equal, toItem: topLayoutGuide, attribute: .bottom, multiplier: 1, constant: 0)
2)您需要确保表格不会自动调整滚动到导航控制器:
tableView.automaticallyAdjustsScrollViewInsets = false