Aide à insérer une nouvelle section dans un TableView

voix
5

Tout le monde continuer à écrire sur la suppression d'une section. Eh bien, je ne peux pas sembler obtenir un ajouté.

À l'heure actuelle, je suis en train comme celui-ci (qui échoue avec NSInternalInconsistencyException):

UITableView *tv = (UITableView *) self.tableView;

if ([tv numberOfSections] == 1)
{
     [tv beginUpdates];
     [tv insertSections:[NSIndexSet indexSetWithIndex:0] withRowAnimation:UITableViewRowAnimationTop];

     NSLog(@Inserted.. Brace for impact.);
     [tv endUpdates];
}

NSLog(@Section count after update: %d, [tv numberOfSections]); // Never reached

Si je ne me trompe pas, l'insertion d'une section avec l'index 0 doit placer en haut, se heurtant toutes les autres sections vers le bas, à droite? Eh bien, si j'écris les NumberOfSections juste après les insertSections, il semble y avoir aucun changement dans le nombre de sections.

Des idées?

Johan

Créé 30/03/2009 à 16:25
source utilisateur
Dans d'autres langues...                            


3 réponses

voix
3

Oui, merci à vous deux.

Après jongler, j'ai finalement réussi à le faire fonctionner. Il était une combinaison des deux de vos suggestions. Les nouvelles données n'a jamais été inséré, mais aussi je ne pas augmenter le nombre de lignes pour le premier élément inséré, mais seulement le second.

Créé 08/04/2009 à 07:43
source utilisateur

voix
2

Vous devez mettre à jour le numberOfSectionsInTableView message de la UITableViewDataSource classe.

Créé 30/03/2009 à 16:34
source utilisateur

voix
2

Est-ce que vous mettez à jour également votre source de données? Vous ne pouvez pas simplement mettre à jour l'affichage du tableau sans mettre à jour également les données sous-jacentes.

Créé 30/03/2009 à 16:29
source utilisateur

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more