我有一个UITableViewController,它显示带有搜索栏的产品列表。
我想仅在用户输入至少3个字符时(在搜索栏中)显示结果表。在此限制之前,我希望显示的表格仍然是完整的产品列表。
方法- (void)updateSearchResultsForSearchController:(UISearchController *)searchController
(我提出查询的地方)是
当搜索栏成为第一个响应者或时,调用 当用户在搜索栏内进行更改时。 (所需的)
所以我想在这个方法(if (searchText.length > 3)
等等)中运行我的“if语句”,但这并不像我想的那样。 (当我输入长度<3的搜索文本时,我看到一个空的结果表。)
我认为我宁愿推迟- (void)updateSearchResultsForSearchController:(UISearchController *)searchController
的调用,直到搜索文本为3个字符,但我不知道如何做到这一点以及我的想法是否正确。
非常感谢您的帮助。
答案 0 :(得分:1)
在if语句
之后编写重新加载的新数据代码(if (searchText.length > 3){
//Load new or whatever data in the array that populates your tableview.
[self.tableView reloadData];
}
答案 1 :(得分:0)
你可以使用UIPopoverController并在tableview中传递sarch数组,它们可能会有所帮助