Frage

ich mehrere Instanzen von UIImageView (s) zu einer NSMutableArray von NSMutableDictionar (n).

hinzufügen bin versucht,

Ich tue dies, um der Lage sein, die UIImageView Bezug zurück zu gehen und herausziehen, um die Position dieser Bilder zu ändern.

Es scheint, dass, wenn ich die Informationen aus dem Wörterbuch zu ziehen, dass es nur einen Null-Zeiger zurückgibt ...

Alle Vorschläge, wie ich das umsetzen sollte? Es kann eine Art und Weise einfachere Methode, eine Liste von n Bildern zu speichern und in der Lage sein, sie später zu verweisen ....

// (for i = 0 to 30)

UIImageView *newBall = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"ball.png"]];
newBall.center = CGPointMake (arc4random() % 280 + 20, arc4random() % 440 + 20);
[self.view addSubview:newBall];

NSMutableDictionary *dictBall = [[[NSMutableDictionary alloc] init] autorelease];
[dictBall setValue:newBall forKey:@"imgBall"];

// the dictionary is then added to the array

[newBall release];

// end for loop

(Ich bin ein Wörterbuch verwenden, weil ich auch speichern ein dy / dx Wert für Änderungsrate in Bewegung)

War es hilfreich?

Lösung

-Code oben schaut nicht OK für mich.

Sie erstellen ein neues NSMutableDictionary * dictBall jedes Mal durch die Schlaufe. etwas hält es, nachdem die Schleife existiert? Sieht nicht wie es aus dem Code. Dies kann, warum Ihr Objekt ist gleich Null.

Bewegen Sie diese Zeile außerhalb / vor dem for-Schleife, und Sie sollten in Ordnung sein.

Auch Sie sind sicher, dass Sie UIViewImage in einem Wörterbuch speichern? Warum nicht nur eine ID (basierend auf dem Tag) und die Koordinaten (CGPoint oder CGRect)? Auf diese Weise können Sie den Tag verwenden kann die UIImageView über den Tag zu finden und bewegen Sie sich, wo immer Sie wollen? Weniger teure Speicher weise.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top