2
我UISearchDisplayController
執行異步搜索經由NSOperationQueue
延遲。通過5S在UISearchDisplayController
但是,結果表不會直觀地更新,直到NSOperation
調用[searchDisplayController.searchResultsTableView reloadData]
後約5秒。
- (BOOL) searchDisplayController:(UISearchDisplayController*)controller shouldReloadTableForSearchString:(NSString*)searchString
{
[searchQueue cancelAllOperations];
NSInvocationOperation *op = [[[CustomSearchOperation alloc] initWithController:controller searchTerm:searchString] autorelease];
[searchQueue addOperation:op];
return NO;
}
我CustomerSearchOperation更新的tableView像這樣:
- (void) main
{
// perform search
[searchDisplayController setContents:results];
[searchDisplayController.searchResultsTableView reloadData];
}