Possiedo un NSMutableArray caricato con valori.Modificare un valore all'interno di NSMutableArray
Più avanti nell'applicazione, ho bisogno di cambiare i valori di uno degli elementi nella matrice.
Come posso realizzare questo?
grazie tony
Possiedo un NSMutableArray caricato con valori.Modificare un valore all'interno di NSMutableArray
Più avanti nell'applicazione, ho bisogno di cambiare i valori di uno degli elementi nella matrice.
Come posso realizzare questo?
grazie tony
Date un'occhiata ai metodi di istanza di riferimento di classe:
È possibile utilizzare:
replaceObjectAtIndex:withObject:
dato si conosce l'indice dell'oggetto. replaceObjectsAtIndexes:withObjects:
per sostituire più oggetti contemporaneamente.
Probabilmente si desidera utilizzare 'replaceObjectAtIndex: withObject:' per la sostituzione dell'oggetto stesso.
Chiama -[NSMutableArray replaceObjectAtIndex:withObject:]
. Oppure, se l'oggetto nell'array è mutabile, basta prenderlo con -objectAtIndex:
e modificarne direttamente le proprietà.
Trovo che queste risposte siano un po 'fuori tema in realtà. L'OP sembrava voler aggiornare una proprietà di un oggetto, non l'intero oggetto. Se così fosse, c'è un modo per farlo senza sostituire l'intero oggetto? In particolare, ho inserito il mio commento qui, Ole ... visto che sei l'uomo .. – whyoz
@whyoz: Come ho scritto, basta chiedere all'array l'oggetto e poi modificarne le proprietà. 'MyObject * obj = array [indice]; obj.myProperty = newValue; '. –
Immagino che volevo dire che ho trovato la "risposta accettata" un po 'fuori tema, ma si tratta di ciò che l'OP intendeva per "cambiare i valori di uno degli elementi". Se si desidera modificare tutti i valori e sostituirli con i valori di un oggetto esistente, replaceObjectAtIndex è utile. Se è necessario modificare alcuni valori, è necessario accedere a ciascuna proprietà che deve essere modificata nel modo in cui Ole spiega in modo più dettagliato nel commento precedente. Alcuni lettori di questo post potrebbero non sapere cosa intendi per objectAtIndex e solo passare la tua risposta, anche se è ciò di cui hanno bisogno. – whyoz
fare riferimento al seguente link. Essa può aiutare
Da che è possibile utilizzare replaceObjectAtIndex: withObject: o
replaceObjectsAtIndexes: withObjects: per la sostituzione di oggetti.
basta conoscere l'indice degli oggetti.
Ero veramente intrappolato e mi hai salvato. Grazie. –