# mise à jour tableview



## jerome57 (21 Juillet 2009)

Bonjour,

J'ai un soucis (eh oui).

J'ai un TableView dans une vue de mon appli. Dans IB, son datasource est lié à mon View Controller.

Dans mon View Controller, je remplis les données en parsant un fichier xml puis avec le code suivant :


```
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
    return 1;
}

// Customize the number of rows in the table view.
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
    return [tableau count];
}

// Customize the appearance of table view cells.
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    
    static NSString *CellIdentifier = @"Cell";
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil) {
        cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
    }
    NSString *ligneTableau = [NSString stringWithFormat:@"%@ %@", [[tableau objectAtIndex:indexPath.row] libelle],[[tableau objectAtIndex:indexPath.row] valorisation]];
    cell.text=ligneTableau;    // Configure the cell.
    return cell;
}
```

Malheureusement, tout ceci est fait au lancement de l'appli.

J'ai donc mis le code pour parser le xml sur l'IBAction d'un bouton ainsiq eu la boucle pour remplir mon array.

```
NSURL *url2 = [NSURL URLWithString: @"[URL="http://url.xml/"]http://url.xml[/URL]"];XMLToObjectParser *myParser = [[XMLToObjectParser alloc] parseXMLAtURL:url2 toObject:@"Contact" parseError:nil];
    

for(int i = 0; i < [[myParser items] count]; i++) {
 Contact *new = [[Contact alloc] init];
 new = (Contact *)[[myParser items] objectAtIndex:i];
 [tableau addObject:new];
 [new release];
}
```


Ceci marche mais je n'arrive pas mettre à jour les données du TableView.

J'ai essayé de lui donner un nom et de faire un [nom reloadData]; mais cela ne fonctionne pas.
Le datasource et le delegate de ma TableView sont biens liés à mon View Controller.

Quelqu'un peut-il m'aider ?


----------



## tatouille (22 Juillet 2009)

reload, mais/ et travaille avec un datasource ne suit pas les exemples cradingues que tu peux trouver, ouvre la doc tableview et lit, pour ceux qui font du cocoa depuis avant les bindings... les gens ecrivant du code pour l'iphone devraient souvant s'abstenir


static NSString *CellIdentifier = @"Cell";

arrete de copier les debilites, et essaye d'utiliser ta tete, si il y a des actions delete, move, ecetera cet identifier doit etre unique, si non tu auras quelques suprises


----------

