按下输入后的UISearchbar过滤器

时间:2014-04-09 08:02:35

标签: ios objective-c uisearchbar

我想知道如何阻止UISearchbar在每个字符输入后过滤一系列项目?而只是在用户输入搜索词后按下搜索按钮或输入后进行一次搜索。

我只问,因为我已经实现了一个UISearchBar,不幸的是我有一些非常大的数据集,我正在使用这些数据集会让事情变慢。

这是我创建的UISearchBar

filterSearchBar = [[UISearchBar alloc] initWithFrame:CGRectMake(10.0, 170.0, 280.0, 40.0)];
        filterSearchBar.autocapitalizationType = UITextAutocapitalizationTypeAllCharacters;
        UITextField *textField = [filterSearchBar valueForKey:@"_searchField"];
        textField.clearButtonMode = UITextFieldViewModeNever;
        filterSearchBar.delegate = self;
        self.filterSearchBar.autocapitalizationType = UITextAutocapitalizationTypeAllCharacters;
        if (([doorSearchString length] != 0) && (doorSearchString != nil)) {
            filterSearchBar.text = doorSearchString;
        }
        filterSearchBar.placeholder = @"Door filter";
        [allBackGroundView addSubview:filterSearchBar];

1 个答案:

答案 0 :(得分:3)

如果您只需在按搜索按钮后进行搜索,请使用searchBarSearchButtonClicked:的{​​{1}}委托方法。

UISearchBar

不要忘记设置- (void)searchBarSearchButtonClicked:(UISearchBar *)searchBar { //Do search logic here } 的{​​{1}}。如果您不需要在每个字符条目后过滤项目,请删除delegate委托方法。

希望这有帮助