在 UISearchBar 中按下 Search/Return 时调用啥方法?

Posted

技术标签:

【中文标题】在 UISearchBar 中按下 Search/Return 时调用啥方法?【英文标题】:What method is called when Search/Return is pressed in a UISearchBar?在 UISearchBar 中按下 Search/Return 时调用什么方法? 【发布时间】:2014-06-11 00:24:21 【问题描述】:

我有一个 UISearchBar 链接到一个表格视图,它工作正常。当您键入时,它会按预期过滤结果。但是,当您按搜索时,结果全部消失,留下一个空列表(未过滤的列表不会返回,直到您清除搜索文本或单击取消)。

我的问题是a)为什么会发生这种情况,或者b)如果没有明显的答案,当你按搜索时默认调用什么方法?

我通过在 Interface Builder 中插入“搜索栏和搜索显示控制器”来配置搜索,然后设置过滤结果以显示“if (tableView == self.searchDisplayController.searchResultsTableView)”。

【问题讨论】:

【参考方案1】:

假设您的委托设置正确,您正在寻找的方法是:

- (void)searchBarSearchButtonClicked:(UISearchBar *)searchBar

【讨论】:

是的,它正在调用它,所以链接就位。我一定是错过了什么。有什么我可以放在那里重绘搜索结果视图的吗? 啊,我用这个修复了它:[self.searchDisplayController.searchResultsTableView reloadData]; jsksma2 - 您是否有指向您找到的文档的链接,我浏览了 Apple 开发网站上的文档,但找不到,显然我看错了地方。我需要另一个:当您在搜索框中重新点击(以编辑字符串)时,它会再次空白结果,直到您编辑一个字符(此时我假设它正在调用 searchDisplayControllerDidBeginSearch)所以我需要在其中放置另一个重绘语句当您第一次点击该框时。 找到了! developer.apple.com/library/ios/documentation/uikit/reference/… developer.apple.com/library/ios/documentation/uikit/reference/…

以上是关于在 UISearchBar 中按下 Search/Return 时调用啥方法?的主要内容,如果未能解决你的问题,请参考以下文章

当用户在文本框中按下返回时,我可以取消回发吗?

此类不是密钥值的密钥值编码兼容。 UISearchBar和DisplayController

UISearchBar

iOS中的UISearchBar

检查是不是在 Winforms 中按下热键

知道何时在 ios 中按下 facebook 登录按钮