2010-09-15 4 views
1

J'ai une TabBarApplication et dans une vue, je charge des données XML à partir d'une URL.Affichage de ActitivyIndicator lors du chargement des données

Lorsque je clique sur l'onglet qui affiche la vue avec UITableView et les données reçues du XML, je souhaite afficher un indicateur d'activité.

  1. Qu'est-ce qui est recommandé ici? Dois-je pousser une vue juste pour montrer l'indicateur d'activité. Aujourd'hui, je cours le code d'analyse XML dans le viewDidLoad. Peut-être si je cours ce code dans viewWillAppear à la place?

  2. Une autre question est de savoir si je dois recharger les données XML chaque fois que l'utilisateur revient à l'onglet contenant UITableView avec les données XML. Ou devrais-je d'une certaine manière que je ne sais pas de vérifier si c'est déjà "récupéré"?

Merci!

Répondre

1

Ma solution a été que dans le viewDidLoad ajouter ceci:

loadingIndicator = [[UIActivityIndicatorView alloc] init]; 
loadingIndicator.frame = CGRectMake(140, 190, 37, 37); 
loadingIndicator.activityIndicatorViewStyle = UIActivityIndicatorViewStyleWhiteLarge; 
[self.view addSubview:loadingIndicator]; 

[self performSelectorInBackground:@selector(loadIndicator) withObject:loadingIndicator]; 
[self performSelectorInBackground:@selector(getXmlData) withObject:nil]; 
0

Ceci est mon code actuel. [Self getEvents] fait le XML-fething et prend 2 secondes comme suit:

loadingIndicator = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleGray]; 
[self.view addSubview:loadingIndicator]; 
[loadingIndicator startAnimating]; 

[self getEvents]; 

[loadingIndicator stopAnimating]; 
Questions connexes