我怎么能禁用自动搜索Three20搜索栏

时间:2012-06-07 13:58:48

标签: ios three20

我正在使用Three20框架,并且自动搜索功能使搜索速度非常慢,我想禁用自动搜索并在用户点击打击垫上的“搜索”按钮后触发搜索。

有什么方法可以禁用自动搜索?非常感谢

1 个答案:

答案 0 :(得分:0)

XXSearchDisplayController

中创建一个源自TTSearchDisplayController的新显示控制器XXSearchDisplayController.m
- (BOOL)searchDisplayController:(UISearchDisplayController *)controller    
 shouldReloadTableForSearchString:(NSString *)searchString {
return NO;
}

这将禁用自动搜索。在此之后,请转到从TTTableViewController派生的类,例如XXProductsTableViewController

@implementation XXProductsTableViewController
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
    if (self) {
        UISearchBar* searchBar = [[UISearchBar alloc] init];
        searchBar.delegate = self;
        _searchController = [[XXSearchDisplayController alloc] initWithSearchBar:searchBar contentsController:self];
    }
    return self;
}

#pragama mark - UISearchBarDelegate
- (void)searchBarSearchButtonClicked:(UISearchBar *)searchBar {
    [self.searchViewController.dataSource search:searchBar.text];
}
@end

上述代码将在用户点击“搜索”按钮

后进行搜索