2010-09-09 9 views
0

J'ai un tableau avec 10 objets et je l'ai mis dans une table. Comment puis-je modifier un des objets individuels dans le tableau ou l'actualiser?Modifier cellule individuelle dans NSArray

Tous les objets contiennent du texte, donc après avoir changé le texte, comment puis-je actualiser le tableau? Tu vois d'où je viens?

Merci.

+0

Plus de détails et (si possible) du code, s'il vous plaît. – kpower

+0

Votre question n'est pas clairement écrite. Veuillez reformuler. –

Répondre

0

NSArray est une classe immuable, ce qui signifie que son contenu ne peut pas être modifié après sa création. Si vous souhaitez pouvoir modifier le contenu de votre tableau après sa création, vous devez utiliser un NSMutableArray à la place. Cette sous-classe de NSArray fournit des méthodes supplémentaires telles que:

  • insertObject:atIndex:
  • removeObjectAtIndex:
  • addObject:
  • removeLastObject
  • replaceObjectAtIndex:withObject:

Une fois que vous avez mis à jour votre tableau mutable, vous pouvez recharger votre table en appelant [self.tableView reloadData].

EDIT:

Si vous voulez juste changer la valeur d'un des éléments de votre tableau sans réellement ajouter ou de supprimer des objets, votre tableau n'a pas besoin d'être mutable, mais l'objet » re change fait. Donc, si vous avez un tableau d'objets NSString, vous pouvez les changer en objets NSMutableString. Vous pouvez ensuite utiliser setString: sur l'un de ces objets pour modifier sa valeur.

+1

Vous avez raison, mais je crois que l'OP demandait comment changer les valeurs des objets contenus dans le tableau, ce qui n'est pas affecté par le fait que le tableau soit mutable ou non. – jlehr

+0

Vous avez peut-être raison. Ce n'est pas clair ce qu'ils demandent. Je vais modifier ma réponse pour couvrir cette possibilité. – cduhn

0

Vous pouvez, par exemple, afficher l'écran d'édition sur la sélection de ligne de table, enregistrer l'édition et actualiser le tableau en masquant l'écran d'édition.