Mit "replaceObjectAtIndex" für array in array
Ich habe ein array innerhalb einer (änderbaren) - array. Ich bin versucht zu ersetzen bestimmte Objekte mit "replaceObjectAtIndex."
Habe ich versucht:
[[mutableArrayName objectAtIndex:0]replaceObjectAtIndex:0 withObject:@"TEST"];
aber ich bekomme die folgende Fehlermeldung:
-[__NSArrayI replaceObjectAtIndex:withObject:]: unrecognized selector geschickt Instanz 0x4e24d70
2011-03-17 17:02:07.008 Kontaktdaten[5145:207] * Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSArrayI replaceObjectAtIndex:withObject:]: unrecognized selector geschickt Instanz 0x4e24d70'
Versuchte ich dies auch:
[mutableArrayName replaceObjectAtIndex:[[mutableArrayName objectAtIndex:0]objectAtIndex:0] withObject:@"TEST"];
aber ich bekomme die folgende Fehlermeldung:
* Terminating app due to uncaught exception 'NSRangeException', reason: '* -[NSMutableArray replaceObjectAtIndex:withObject:]: index 16660 jenseits der Grenzen [0 .. 0]'
- haben Sie überprüft, um sicherzustellen, dass ein Objekt existiert mit dem index 0 im array?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den 2. Ansatz stützt sich auf 3 arrays anstelle von 2. 1. Ansatz scheint in Ordnung zu sein, aber ich denke, Sie haben eine
NSArray
innerhalb einesNSMutableArray
weilNSArray:replaceObjectAtIndex:withObject
existiert nicht. Stellen Sie also sicher, dass alle arrays sind mutable.Also So weit wie ich das verstanden hab, haben Sie: ein mutable-array, und in diesem, Sie haben mehr arrays. Jetzt wollen Sie zum abrufen einer dieser "sub-arrays" und ändern Sie es.
In diesem Fall der erste Versuch ist richtig, außer, du hast
NSArray
Instanzen in IhremNSMutableArray
. Und Sie können nicht ändern die, daher die Ausnahme. Sie müssen also sicherstellen, dass man die FüllungNSMutableArrays
in Ihrem äußerenNSMutableArray
. Dann der Anruf von Ihrem ersten Versuch erfolgreich sein wird.