Мой UISearchDisplayController
выполняет асинхронные запросы через NSOperationQueue
.Отображение результатов задерживается на 5 секунд в UISearchDisplayController
Однако таблица результатов не визуально обновляется до приблизительно 5 с после того, как NSOperation
звонит [searchDisplayController.searchResultsTableView reloadData]
.
- (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];
}