当隐藏键盘时,UISearchBar不会自动隐藏自身。您需要在代码中手动隐藏UISearchBar。
以下是一个示例代码,演示了如何在隐藏键盘时隐藏UISearchBar:
class ViewController: UIViewController, UISearchBarDelegate {
@IBOutlet weak var searchBar: UISearchBar!
override func viewDidLoad() {
super.viewDidLoad()
searchBar.delegate = self
}
func searchBarSearchButtonClicked(_ searchBar: UISearchBar) {
searchBar.resignFirstResponder()
}
func searchBarTextDidEndEditing(_ searchBar: UISearchBar) {
searchBar.showsCancelButton = false
}
func searchBarTextDidBeginEditing(_ searchBar: UISearchBar) {
searchBar.showsCancelButton = true
}
func searchBarCancelButtonClicked(_ searchBar: UISearchBar) {
searchBar.resignFirstResponder()
searchBar.showsCancelButton = false
}
}
在这个示例中,当用户点击搜索按钮时,键盘会被隐藏,并且搜索栏上的取消按钮也会被隐藏。当用户开始编辑搜索栏时,取消按钮会显示出来。如果用户点击取消按钮,键盘会被隐藏,并且取消按钮也会被隐藏。
您可以根据您的需求在这个示例代码的基础上进行修改。