Three20フレームワークを使用していますが、自動検索機能により検索が非常に遅くなります。ユーザーがパッドの[検索]ボタンをクリックすると、自動検索を無効にして検索を開始したいと思います。
自動検索を無効にする方法はありますか?どうもありがとう
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
上記のコードは、ユーザーが[検索]ボタンをクリックすると検索を実行します