Pergunta

eu tenho um UITableViewController A subclasse que renderiza uma lista de categorias predefinidas e busca uma lista de sites/URLs para cada um deles. Quero adicionar um recurso de pesquisa que permitiria pesquisar pelo nome de um site.

O que eu quero é ter uma interface de pesquisa usual, que iniciaria um thread de pesquisa (que buscaria e processaria resultados) e depois o mostraria na tabela. Eu modifiquei meu delegado de tabela para retornar um conjunto personalizado de células se o UITableView não é o único formulário XIB (ou seja, é uma exibição da tabela de pesquisa):

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *CellIdentifier = @"RSSCatalogCell";

    if(tableView != self.tableView)
        return [searchController tableView:tableView cellForRowAtIndexPath:indexPath];

    // ... usual cell initialization for categories
}

Assim que meu tópico de rede (gerado de searchBarSearchButtonClicked:) Acabamentos, ele pede a uma tabela de controladores de pesquisa para recarregar os dados:

if(searchDisplayController.active)
    [searchDisplayController.searchResultsTableView reloadData];

Mas eu ainda vejo a mesa antiga (com o catálogo atraente), no entanto, parece ignorar os toques.

Foi útil?

Solução

Ok, eu resolvi (eu odeio que, quando você escreve claramente uma pergunta para algum grupo/fórum público, pode encontrar rapidamente seu próprio bug depois de passar vários dias procurando por ele).

O problema estava em uma conexão errada no XIB, o código acima está funcionando perfeitamente.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top