1.SeachBar的创建
//创建一个搜索框
let searchBar:UISearchBar = UISearchBar(frame: CGRect(x: 20, y: 100, width: 280, height: 45))
self.view.addSubview(searchBar)
2.SeachBar的基础应用
//设置搜索框上的默认文字
searchBar.placeholder = "请输入关键字"
//设置搜索框上显示的提示文字
searchBar.text = "GD"
//设置搜索框风格
searchBar.barStyle = UIBarStyle.blackOpaque
searchBar.barStyle = UIBarStyle.default
//设置搜索框背景文字
searchBar.prompt = "Yeah!"
//设置相应功能按钮的显示与否
searchBar.showsBookmarkButton = true
//.showsCancelButton = true//取消搜索按钮
searchBar.showsSearchResultsButton = true//显示搜索结果按钮
//设置渲染颜色(附件颜色)
searchBar.tintColor = UIColor.red
//设置搜索栏的颜色
searchBar.barTintColor = UIColor.blue
//设置搜索框的附件视图
searchBar.scopeButtonTitles = ["1","2","3","4"]
//设置展示附件视图
searchBar.showsScopeBar = true
searchBar.sizeToFit()//自适应
//设置代理
searchBar.delegate = self
3.SeachBar的函数
//代理回调函数
//点击附件视图代理方法的回调
func searchBar(_ searchBar: UISearchBar, selectedScopeButtonIndexDidChange selectedScope: Int) {
print(selectedScope)
}
//当输入文字变化时调用的方法
func searchBar(_ searchBar: UISearchBar, textDidChange searchText: String) {
//print(searchText)
}
//点击图书按钮触发的方法
func searchBarBookmarkButtonClicked(_ searchBar: UISearchBar) {
print("点击了图书")
}
//点击搜索结果按钮触发的方法
func searchBarResultsListButtonClicked(_ searchBar: UISearchBar) {
}
//将要进入编辑状态触发的方法
func searchBarShouldBeginEditing(_ searchBar: UISearchBar) -> Bool {
return true
}
//将要结束编辑时触发的方法
func searchBarShouldEndEditing(_ searchBar: UISearchBar) -> Bool {
return true
}
//检测用户的输入文字
func searchBar(_ searchBar: UISearchBar, shouldChangeTextIn range: NSRange, replacementText text: String) -> Bool {
print(text)
return true
}
//点击取消按钮时触发的方法
func searchBarCancelButtonClicked(_ searchBar: UISearchBar) {
}
//点击搜索按钮触发的方法
func searchBarSearchButtonClicked(_ searchBar: UISearchBar) {
}
//已经进入编辑状态时调用的方法
func searchBarTextDidBeginEditing(_ searchBar: UISearchBar) {
}
//将要结束编辑时触发的方法
func searchBarTextDidEndEditing(_ searchBar: UISearchBar) {
}
override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
searchBar.resignFirstResponder()
}