Question

J'ai un NSArray que je transmets via une méthode de délégation:

- (void)didFinishParsing:(NSArray *)array {
    [self.myArray addObjectsFromArray:array];
    NSLog(@"%@", self.myArray);
    [self.tableView reloadData];
}

Il n'y a qu'un seul objet dans le tableau et j'aimerais que le nombre de lignes tableView soit égal au nombre d'objets dans le tableau objectAtIndex: 0 , mais je ne peux pas obtenir le décompte. J'ai essayé:

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
    return [[self.myArray objextAtIndex:0] count];
}

Comment obtenir le nombre d'objets dans le premier (et unique) objet de mon tableau?

Était-ce utile?

La solution

Pour compter le tableau à l'index 0 de self.myArray, votre syntaxe est correcte. La configuration de votre variable array est-elle comme vous le pensez?

L'appel de méthode addObjectsFromArray: ajoutera le contenu de array à la fin de self.myArray .

En d'autres termes, [tableau objectAtIndex: 0] deviendra [self.myArray lastObject:]

Si vous ne parvenez pas à exécuter , comptez sur [self.myArray objectAtIndex: 0] ou [self.myArray lastObject] . L’objet que vous essayez de compter peut être nil , vide, pas un NSArray / Set tel que vous vous attendez.

Autres conseils

Si vous essayez de créer un tableau dans un tableau, utilisez plutôt

.
[self.myArray addObject: array];

Ceci ajoutera le tableau au prochain index dans self.myArray. Ce que vous faisiez auparavant avec

[self.myArray addObjectsFromArray:array];

ajoutait le contenu de array dans self.myArray sans ajouter array dans self.myArray .

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top