UItableView et webservice

JekarJekar Membre
08:44 modifié dans API UIKit #1
J'appelle un webservice qui remplit un MutableArray, qui est utilisé pour remplir ma UITableView.
Le problème est que le MutableArray est bien rempli, mais rien n'apparait dans mon TableView, alors que si je rempli a la main mon MutableArray tout apparait bien.
C est comme si le WS renvoyait trop tard les infos.

Tout ca est fait dans viewdidload.
Ou est l astuce?

Merci

Réponses

  • 08:44 modifié #2
    Bha au moment où tu reçois les infos, tu fais [maTableView reloadData];  :adios!:
  • JekarJekar Membre
    08:44 modifié #3
    Merci, c etait aussi simple que ca :)
    2eme question alors, comment faire pour que ma vue n'apparaisse que lorsque le WS a repondu?
    Car la, ca apparait vide, puis se rempli. C est bien, mais un peu moche !
  • 08:44 modifié #4
    Tu peux faire ça dans le viewDidLoad :
    <br />- (void)viewDidLoad<br />{<br />&nbsp;  CGRect frame = [maTableView frame];<br />&nbsp;  frame.origin.y-=frame.size.height;<br />&nbsp;  [maTableView setFrame:frame];<br />&nbsp;  // On vire la tableView de notre vue en la plaçant sur une origine Y non visible<br />}<br />
    


    Et au moment où tu reçois les données, par exemple dans "dataReceived"
    <br />- (void)dataReceived<br />{<br />&nbsp; &nbsp;  [maTableView reloadData];<br />&nbsp; &nbsp; [UIView beginAnimations:nil context:nil];<br />&nbsp; &nbsp; [UIView setAnimationDuration:0.75];<br />&nbsp; &nbsp; [UIView setAnimationDelegate:self];<br />&nbsp; &nbsp; [UIView setAnimationDidStopSelector:NULL];<br /> <br />&nbsp; &nbsp; CGRect frame = [maTableView frame];<br />&nbsp; &nbsp; frame.origin.y+=frame.size.height;<br /><br />&nbsp; &nbsp; [maTableView setFrame:frame];<br /><br />&nbsp; &nbsp; [UIView commitAnimations];<br />}<br />
    
Connectez-vous ou Inscrivez-vous pour répondre.