2010-05-28 4 views
0

J'ai une application à 4 onglets. Le deuxième onglet a un tableviewController. Lorsque je sélectionne le deuxième onglet, la vue de table est affichée avec son contenu et cela fonctionne très bien.Chargement du contenu du contrôleur TableView après l'affichage de l'onglet

Le problème est que ces données proviennent du réseau et il parle 2-3 secondes à charger. Donc, quand j'appuie sur le deuxième onglet, il y va après que le contenu a été chargé.

Comment puis-je afficher une vue de table vide (je vais mettre un indicateur d'activité), puis charger et afficher le contenu?

Teo

Répondre

0

Lorsque vous commencez à charger vos données, j'ajoute l'indicateur d'activité au-dessus de la vue de la table et de retour 0 de - numberOfSectionsInTableView: et -tableView:numberOfRowsInSection:.

Une fois les données chargées, supprimez l'indicateur d'activité, indiquez UIT.10View à -reloadData: et commencez à renvoyer les valeurs correctes pour le nombre de sections et de lignes.

+0

Notez que pour la plupart des applications qui utilisent de UIActivityIndicator trop intrusive, ils devraient utiliser l'indicateur de barre d'état: \t [[UIApplication sharedApplication] setNetworkActivityIndicatorVisible :OUI]. –

+0

Devrait-il être fait de -viewWillAppear? 1. Régler numberOfRowsInSection à zéro 2. Les données de recharge 3. Démarrer de données du réseau de chargement 4. Set numberOfRowsInSection à xxx 5. Rechargement des données – Teo

+0

Oui, vous pouvez le faire en -viewWillAppear. –

Questions connexes