我正在尝试向视图添加搜索栏,但我已经尝试了一千种方式而且搜索栏代理无效。
class SearchTableViewController: UITableViewController, UISearchBarDelegate{
override func viewDidLoad() {
super.viewDidLoad()
let searchController = UISearchController(searchResultsController: nil)
searchController.dimsBackgroundDuringPresentation = true
searchController.obscuresBackgroundDuringPresentation = true
self.definesPresentationContext = true
searchController.searchBar.delegate = self
self.tableView.tableHeaderView = searchController.searchBar
// Uncomment the following line to preserve selection between presentations
// self.clearsSelectionOnViewWillAppear = false
// Uncomment the following line to display an Edit button in the navigation bar for this view controller.
// self.navigationItem.rightBarButtonItem = self.editButtonItem()
}
答案 0 :(得分:0)
我遇到了同样的问题。
你遇到的问题是UITableViewController有一个很大的限制:它的主视图必须是占用整个屏幕空间的UITableView(除了顶部可能的导航栏,以及工具栏或底部的标签栏。)
如果你的屏幕只包含一个UITableView,那么使用它是有意义的。但是,由于您要添加搜索栏,因此必须使用UIViewController并向其添加UITableView。然后,您可以根据需要添加搜索栏。