如何以编程方式将搜索栏添加到UITableView标题



如何以编程方式将搜索栏添加到uitableview标头中?具体来说,我有一个栏按钮项目,当按下它时,我想在搜索栏中将其动画化为表视图标题,当按下取消按钮时,它将动画化回视图之外,标题将缩放回正常。这可能吗?谢谢

它基于Swift 2,但与Swift 3 没有太大区别

将搜索委托添加到视图控制器:

UISearchResultsUpdating

进行搜索:

let searchController = UISearchController(searchResultsController: nil)

设置searchController:的默认值

searchController.searchResultsUpdater = self
searchController.dimsBackgroundDuringPresentation = false
definesPresentationContext = true

将搜索添加到表:

table.tableHeaderView = searchController.searchBar

此代表让您知道开始搜索:

func updateSearchResultsForSearchController(searchController: UISearchController) {
filterContentForSearchText(searchController.searchBar.text!)
}

暗示你的搜索功能:

func filterContentForSearchText(searchText: String, scope: String = "All") {
// do some stuff
}

用程序设置搜索栏

首先将UISearchBarDelegate添加到您的课堂

let searchBar = UISearchBar()
searchBar.frame = CGRect(x: 0, y: 0, width: 200, height: 70)
searchBar.delegate = self
searchBar.showsCancelButton = true
searchBar.searchBarStyle = UISearchBarStyle.default
searchBar.placeholder = " Search Here....."
searchBar.sizeToFit()

并将搜索栏添加到UITableView标题

tableView.tableHeaderView = searchBar

最新更新