Ich habe ein seltsames Problem. Ich habe ein Singleton mit Wörterbuch darin. Dieses Wörterbuch wird regelmäßig in Laufzeit aktualisiert. In einem Viewcontroller greife ich auf dieses Singleton-Wörterbuch zu und erstelle ein neues NSMutableArray.NSMutableArray automatische Updates mit Wörterbuch in Singleton
@property (nonatomic, retain) NSMutableArray *myArray;
es in viewDidLoad Initialized:
_myArray = [[NSMutableArray alloc] init];
Dann in viewDidAppear, ich zuweisen das Array zu dem Singleton NSMutableDictionary * myDict Werte:
_myArray = [NSMutableArray arrayWithArray:[[[DataCenter singleton] myDict] allValues]];
Bevor irgendetwas zu _myArray tun, Ich überwache _myArray-Werte in einem Timer und es scheint, dass es sich immer weiter ändert, wenn man den Singleton-Wörterbuchwerten folgt.
Warum und wie erstellt man ein unabhängiges NSMutableArray, das nicht irgendwie mit diesem Wörterbuch Singleton verbunden ist?
einen Fehler Got für NSArray keine sichtbare Schnittstelle sagen die copyItems Wähler erklärt: – GeneCode
Ok ich denke, wir mutableCopy statt copyItems verwenden: JA . Wie auch immer, akzeptiere deine Antwort, sobald du den Code geändert hast. Vielen Dank. – GeneCode
Vielleicht hatte ich da ein falsches bisschen Syntax, aber so weit mein Verständnis geht, erstellt MutableCopy nur eine flache Kopie, während copyItems eine tiefe Kopie erstellt, was ich glaube, was Sie wollen. – Frankie