Das hat mich ratlos gemacht.NSArray, letztes Objekt immer ungültig
Ich baue ein NSArray und initWithObjects. Das letzte Element weist niemals wirklich zu. Tatsächlich nimmt die nächste Zuweisung in meinem Code die gleiche Speicheradresse wie diejenige, die von dem letzten Element gezeigt wird.
-Code ist:
coordArr = [[NSArray alloc]initWithObjects:
[NSValue valueWithCGPoint:CGPointMake(200.0,40.0)],
[NSValue valueWithCGPoint:CGPointMake(56.0,290.0)],
[NSValue valueWithCGPoint:CGPointMake(99.0,35.0)],
[NSValue valueWithCGPoint:CGPointMake(222.0,333.0)],
[NSValue valueWithCGPoint:CGPointMake(60.0,60.0)],
[NSValue valueWithCGPoint:CGPointMake(105.0,299.0)],
nil];
Debugger zeigt:
alt text http://sergepress.com/temp/NSArray.png
Wenn Sie eine Idee haben, das helfen würde. Danke!
Ich habe versucht, diesen Fehler zu reproduzieren und konnte nicht. Könnten Sie mehr von dem umgebenden Code posten? – pgb
Ich kann nicht sagen, dass das Problem hier ist ... Ich habe eine [[[NSArray ....]] behalten]]; umsonst. #import @interface Waypoints: UIView { \t NSArray * coordArr; } @Eigenschaft (nicht atomisch, behalten) NSArray * coordArr; @End @implementation Wegpunkte @synthesize coordArr; - (id) Initwithframe: (CGRect) -Rahmen { if (self = [super Initwithframe: frame]) { \t \t self.backgroundColor = [UIColor Clear]; // transparenter Hintergrund \t \t coordArr = ...; } Rückkehr selbst; } –
SYF970
- (void) viewDidLoad { \t Wegpunkte * wpts = [[Wegpunkte Alloc] initWithFrame: CGRectMake (0,0,320,480)]; \t self.waypoints = wpts; \t [self.view addSubview: Wegpunkte]; \t [wpts release]; } – SYF970