Preencher UITableView com resultados de webservice
-
11-09-2019 - |
Pergunta
Eu tenho uma visão de mesa que eu quero para preencher com os resultados (XML) da minha chamada para um serviço web.
O NSURLConnection
e NSMutableURLRequest
que estão fazendo a configuração para esta Atualmente no meu método -viewDidLoad
, e eu também tenho todos os meus métodos de delegado uitableview no meu arquivo .m também.
Os dados estão sendo devolvidos e adicionado a minha matriz corretamente. Meu problema é (eu acho) que os métodos uitableview estão sendo chamados antes que qualquer dado foi retornado do serviço web, que é por isso que minha exibição de tabela é sempre em branco.
Como posso chamar os métodos na ordem certa (se isso é mesmo o problema) ...
Solução
Você está chamando reloadData no tableview uma vez que você repovoada a matriz? Você precisa deixá-lo saber que você tem novos dados.
Outras dicas
UITABLEVIEW *mytableview=[[UITABLEVIEW alloc]init];
[mytableview reloadData];
Sim, você está certo; os delegados UITABLEVIEW
são chamados antes que o serviço web. Então você tem que chamar os delegados novamente para tentar recarregar os dados. Funciona perfeito para mim. recarregar mesa quando u tem algo retornado do webservice. armazená-lo em NSArray ou o que quer e mesa, em seguida, recarregar.
Confira exemplo de código SeismicXML da Apple no site developer.apple.com/iphone. Ele mostra como usar NSURL, NSXMLParser, e uma TableView para fazer exatamente esse tipo de coisa.