Swift 2.0 - UISearchBar 取消按钮不删除 searchBar 内容
Posted
技术标签:
【中文标题】Swift 2.0 - UISearchBar 取消按钮不删除 searchBar 内容【英文标题】:Swift 2.0 - UISearchBar cancel button not deleting searchBar content 【发布时间】:2015-09-24 22:58:58 【问题描述】:我有一个带有 searchBar 的 tableView。具有搜索功能的表格工作正常。我只是遇到了 searchBar 的“取消”按钮的意外行为。
问题是在按“取消”停止过滤后,所有项目都应该再次显示在 tableView 中。当我先按搜索文本字段中的浅灰色“x”删除按钮,然后按“取消”按钮关闭键盘时,这是有效的。
如果我只按“取消”而不按“删除”,小键盘将关闭,搜索栏中的文本将被删除,但表格仍会显示搜索结果。
是否有无需手动按下即可调用搜索栏删除按钮的功能?
我试图这样做,但它不起作用:
func searchBarCancelButtonClicked(searchBar: UISearchBar)
// called when cancel button pressed
self.searchBar.text = reset
self.view.endEditing(true)
tableView.reloadData()
有人可以帮忙吗?
【问题讨论】:
我认为您可以添加一个默认的取消按钮,它已经可以处理这个问题。类似searchBar.showCancelButton
【参考方案1】:
您可以像这样重置搜索栏:
func searchBarCancelButtonClicked(_ searchBar: UISearchBar)
searchBar.text = nil
searchBar.showsCancelButton = false
searchBar.endEditing(true)
self.tableView.reloadData()
【讨论】:
以上是关于Swift 2.0 - UISearchBar 取消按钮不删除 searchBar 内容的主要内容,如果未能解决你的问题,请参考以下文章
如何将 UiSearchBar 的背景颜色更改为黑色-SWIFT
UISearchBar:传递数据;单击的标题与 ListViewController - Swift 中显示的数据不对应
更改 UISearchBar 中的 UITextField 高度 - Swift 3