Ich habe versucht, meine NSMutableArray 100 Wege von Sonntag zu initialisieren, und NOTHING funktioniert für mich. Ich habe versucht, es gleich einem neu zugewiesenen und initialisierten NSMutableArray zu setzen, nur zuzuteilen, die Variable selbst zu initialisieren, jede Kombination, die mir einfiel, und immer das gleiche Ergebnis.NSMutableArray addObject: - [__ NSArrayI addObject:]: nicht erkannter Selektor an Instanz
Hier ist der Code:
Object.h
NSMutableArray *array;
@property (copy) NSMutableArray *array;
Object.m
@synthesize array;
if (self.array) {
[self.array addObject:anObject];
}
else {
self.array = [NSMutableArray arrayWithObjects:anObject, nil];
}
HINWEIS: debug "anObject" zur Zeit nicht nil der Ausführung ist ...
Ich habe einObject getestet und es ist Die Initialisierung funktioniert gut, aber ich bekomme den Fehler unter, wenn Ich versuche, object: zu self.array.
2010-07-10 11: 52: 55,499 MeineAnw [4347: 1807] - [__ NSArrayI addObject]: unerkannte Selektor Instanz gesendet 0x184480
2010-07-10 11: 52: 55,508 MeineAnw [4347: 1807] *** Beenden app aufgrund nicht abgefangene Ausnahme 'NSInvalidArgumentException', Grund: '- [__ NSArrayI addObject:]: Unbekannter Selektor an Instanz gesendet 0x184480'
hat jemand eine Ahnung, was falsch los ist ?
Beachten Sie, dass Ihre Eigenschaftsdeklaration nicht mit dem Ivar-Typ übereinstimmen muss, also sollten Sie' @property (nonatomic, copy) NSArray verwenden * Array; 'in Ihrem Fall. Beachten Sie auch, dass Ihre Eigenschaft implizit atomar ist, die Implementierung Ihres Setter jedoch nicht - siehe [Atomicity] (http://developer.apple.com/mac/library/documentation/Cocoa/Conceptual/ObjectiveC/Articles/ocProperties.html) # // Apple_ref/doc/uid/TP30001163-CH17-SW28). –
Schließlich gibt '-mutableCopy' bereits eine zurückgehaltene Instanz zurück, so dass es nicht nötig ist, [array retain] - siehe [Object Ownership Policy] (http://developer.apple.com/mac/library/documentation/Cocoa) /Conceptual/MemoryMgmt/Articles/mmObjectOwnership.html#//apple_ref/doc/uid/20000043-SW1). –
Nochmals vielen Dank, Herr Fritzsche. Ich war neugierig auf dieses Extra, aber es schien in meinem Programm zu funktionieren. Anscheinend habe ich einen Fehler woanders. : -/Sie sind der Mann, ich danke Ihnen für Ihren Beitrag zu diesem Beitrag und, unbeabsichtigt, mein Programm; Ich schätze deine Zeit! Mit freundlichen Grüßen, Z @ K! – Zak