gpt4 book ai didi

ios - UISearchController 问题 swift ios

转载 作者:行者123 更新时间:2023-11-28 08:58:33 28 4
gpt4 key购买 nike

我有一个带有搜索栏的表格 View 。我可以搜索并显示正确的结果。当我单击取消时,我的 tableview 获得了所有数据,这很好。我想要实现的是,在搜索时,如果我按下键盘上的返回按钮,并且当我的搜索栏为空时,我希望显示我的初始数据。这是我的搜索代码。基本上这是我们在 iPhone 上工作的联系人地址簿。

欢迎任何帮助。

 func setupSearchBar() {
searchController = self.addSearchBar()
searchController.searchResultsUpdater = self
searchController.delegate = self
searchController.searchBar.delegate = self
}
func updateSearchResultsForSearchController(searchController: UISearchController) {
if count(searchController.searchBar.text) > 0 {
tableData = MyCoreData().search(searchController.searchBar.text)
self.tableView.reloadData()
}
}

func searchBarCancelButton(searchBar: UISearchBar) {
searchBar.text = ""
self.resignFirstResponder()
self.view.endEditing(true)
searchBar.resignFirstResponder()
reloadTableDataFromDB()
}

func searchBarTextDidEndEditing(searchBar: UISearchBar) {
}

最佳答案

您的 updatesearch 函数缺少返回默认加载数据的 else 部分。这样做:

 func setupSearchBar() {
searchController = self.addSearchBar()
searchController.searchResultsUpdater = self
searchController.delegate = self
searchController.searchBar.delegate = self
}
func updateSearchResultsForSearchController(searchController: UISearchController) {
if count(searchController.searchBar.text) > 0 {
tableData = MyCoreData().search(searchController.searchBar.text)
self.tableView.reloadData()
} else {
return self.reloadDataFromDB()
}
}

func searchBarCancelButton(searchBar: UISearchBar) {
searchBar.text = ""
self.resignFirstResponder()
self.view.endEditing(true)
searchBar.resignFirstResponder()
reloadTableDataFromDB()
}

func searchBarTextDidEndEditing(searchBar: UISearchBar) {
}

关于ios - UISearchController 问题 swift ios,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32442452/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com