Wenn ich eine zufällige Ganzzahl z. randomInt und möchte eine erstellte Schaltfläche aufrufen, z. UIButton * button1, button2, button3 usw.Verwenden einer zufälligen Ganzzahl zum Aufrufen eines Objekts
Kann ich den Knopf nennen als
NSString *buttonNumber = [NSString stringWithFormat:@"button%d", randomInt];
[buttonNumber setImage:[UIImage imageNamed:@"someImage.png"] forState:UIControlStateNormal];
folgt Ich habe eine Menge von diesen, und es wäre dramatisch Codemenge zu verringern.
Dank
+1 bekommen ist ein vernünftiger Ansatz, der das gebrochene Design behebt. – Eiko
Erzeugt das nicht die doppelte Anzahl von Tasten? Wenn ich alle meine Schaltflächen deklariere, dann füge sie zu einem Array hinzu. Um später darauf zugreifen zu können, erstelle ich sicher keine neue Schaltfläche? – jarryd
Sie erhalten nur die Referenz aus dem Array zurück und erstellen kein neues Objekt. Aber in diesem Fall können Sie einfach mit Tags arbeiten. Sie sind für solche Sachen da. Wenn Sie ein Array verwenden möchten, müssen Sie es irgendwo speichern und sicherstellen, dass es richtig aufgeräumt ist. Vielleicht fügen Sie das Array in der Elternansicht hinzu. Sie müssen also uiview dafür ableiten. Mit Tags benötigen Sie keine zusätzliche Variable. – Bastian