我在使用UISearchBar的UINavigationBar中面临一个问题。右侧按钮项目覆盖到搜索栏。我想在搜索栏的左侧位置添加左栏按钮。请查找图像以便了解。
请在这里找到一些代码。
searchBar = SearchBar()
searchBar.delegate = self
if #available(iOS 11.0, *) {
searchBar.heightAnchor.constraint(equalToConstant: 44).isActive = true
}
searchBar.showsCancelButton = false
navigationItem.titleView = searchBar
答案 0 :(得分:0)
您可以在搜索栏中使用默认cancel
按钮
取消按钮有一些方法: -
func searchBarShouldBeginEditing(_ searchBar: UISearchBar) -> Bool {
searchBar.showsCancelButton = true
return true
}
func searchBarTextDidEndEditing(_ searchBar: UISearchBar) {
self.searchBar.endEditing(true)
searchBar.resignFirstResponder()
}
func searchBarSearchButtonClicked(_ searchBar: UISearchBar) {
searchBar.resignFirstResponder()
}
func searchBarCancelButtonClicked(_ searchBar: UISearchBar) {
self.searchBar.endEditing(true)
searchBar.showsCancelButton = false
searchBar.resignFirstResponder()
}
仅当用户开始在字段中输入字符时,才会显示“取消”按钮。