searchDisplayController

searchDisplayController

我在ViewController中实现SearchDisplayController。它正常工作,除了以下几点:我正在控制searchResultTableView属性以调整tableView的大小,该结果在显示结果的位置通过saarchBar的textDidChange方法完成。

但是,当我键入第一个字符时,tableView不会调整大小,只有在键入第二个字符时才调整大小。
这是我的代码:

- (void) searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText
{
    CGRect tableFrame= self.searchDisplayController.searchResultsTableView.frame;
    tableFrame.size.height=400;
    tableFrame.size.width=300;
    [self.searchDisplayController.searchResultsTableView setFrame:tableFrame];
    [self.searchDisplayController.searchResultsTableView reloadData];
}

我还尝试在searchDisplayControllerDidBeginSearch,didLoadSearchResultTableView或viewDidLoad方法中调整tableView的大小,但是没有用。

我究竟做错了什么?

最佳答案

- (void)searchDisplayController:(UISearchDisplayController *)controller didShowSearchResultsTableView:(UITableView *)tableView

为我工作

10-08 17:50