Was wahrscheinlich passiert, ist dass dein [appDelegate getTestList:1] nicht tatsächlich ein NSMutableArray
zurückgibt, sondern ein NSArray
. Das Array einfach als veränderbar zu deklarieren, indem du einen Zeiger darauf wie in dem Beispiel hältst, wird in diesem Fall nicht funktionieren, stattdessen verwende:
NSMutableArray *array1 = [[appDelegate getTextList:1] mutableCopy];
NSArray *array2 = [appDelegate getTextList:2];
[array1 addObjectsFromArray:array2];
Oder du könntest die 'textList'-Variable, die du in deinem appDelegate hast, von Anfang an als NSMutableArray speichern. Ich nehme an, dass du ein NSArray
von NSArrays
(oder ihren veränderbaren Versionen) hast. z.B.
// In der Klassen-Schnittstelle
NSMutableArray *textLists;
// In der Funktion, in der du Listen zum Array hinzufügst
NSMutableArray *newTextList;
[self populateArray:newTextList]; // Oder so ähnlich
[textLists addObject:newTextList];
Anmerkung: Wahrscheinlich wirst du einen anderen Arbeitsablauf haben, aber ich hoffe, du bekommst die Idee, die tatsächlichen Listen als NSMutableArrays zu speichern.
Weitere Anmerkung: Die zweite Methode wird das NSMutableArray
im Ort verändern, das [appDelegate getTextList:1];
zurückgibt