2011-09-20 2 views
3

Im implémentation d'une application qui montre des données Twitter, quand fonctionne sur wifi est ok, mais sur les plantages 3g, je suis arrivé à la conclusion que c'est parce que le NSURLRequest qui récupère les données qui remplit la table prend plus de temps à charger, donc la table finit par appeler un objet pour clé, quand les clés n'ont même pas été chargées,comment savoir quand NSURLRequest terminer le chargement

Donc, la question est, - comment savoir quand le NSURLRequest a fini de charger? [J'ai vérifié la référence de la classe, mais je ne l'ai pas vu ??]

Merci beaucoup!

Répondre

9

Les méthodes déléguées sont appelées sur la connexion NSURLConnection correspondante, par ex.

urlConnection = [[NSURLConnection alloc] initWithRequest:request delegate:self startImmediately:YES]; 

Vous recevrez ensuite plusieurs callbacks inclus le rappel fini comme suit:

- (void)connectionDidFinishLoading:(NSURLConnection *)connection{} 

D'autres callbacks délégués sont:

- (void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error 

- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data{ 

- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response { 

- (BOOL)connectionShouldUseCredentialStorage:(NSURLConnection *)connection{ 

- (void)connection:(NSURLConnection *)connection didReceiveAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge { 
Questions connexes