Ziel C: Verwendung von tags
Habe ich seit der recherche für den letzten paar Tagen und kann es nicht herausfinden. Ich habe eine Menge von Schaltflächen, die das gleiche tun (verschwinden, wenn Sie geklickt werden). Ich definiere jedes mit seinem eigenen tag, aber wie kann ich bestimmen, welche gedrückt wird?
-(IBAction) tapBrick{
int x = brick.tag;
NSLog(@"%d", x);
//remove last brick
[brick removeFromSuperview];
//add to score
count++;
NSString *scoreString = [NSString stringWithFormat:@"%d", count];
score.text = scoreString;
//determine x y coordinates
int xPos, yPos;
xPos = arc4random() % 250;
yPos = arc4random() % 370;
}
-(void) produceBricks {
//determine x y coordinates
int xPos, yPos;
xPos = arc4random() % 250;
yPos = arc4random() % 370;
//create brick
brick = [[UIButton alloc] initWithFrame:CGRectMake(xPos,yPos + 60,70,30)];
[brick setBackgroundColor:[UIColor blackColor]];
[brick setTag:i];
[brick addTarget:self action:@selector(tapBrick) forControlEvents:UIControlEventTouchUpInside];
i++;
[self.view addSubview:brick];
}
Produzieren Ziegel genannt wird alle 2 Sekunden durch einen timer.
- Sie erhalten Antworten darauf, wie dies zu tun, ohne tags in deinem letzten thread: stackoverflow.com/questions/4515592/...
- Für den Rekord-tags sind ein Merkmal der UIView-Klasse - (und seine Derivate), nicht eine Objective-C ein.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Chris, wenn alles, was Sie tun müssen, ist identifizieren Sie die Schaltfläche, die gedrückt wurde, einfach ändern Sie Ihre Methode, die Erklärung zu akzeptieren
sender
parameter, und der Anrufer (aUIButton
, in diesem Fall) liefert eine Referenz auf sich selbst. Erstellen Sie eineUIButton
Zeiger, und Sie werden in der Lage sein, um den Zugriff auf die tag-Nummer der gedrückten Taste.(Durch die Art und Weise, da Sie beim erstellen der buttons mit code, brauchen Sie nicht zu erklären, den Rückgabewert
IBAction
.IBAction
ist das gleiche wievoid
, außer, dass es Tipps aus der Interface Builder, die Sie verbinden einigeIBOutlet
zu dieser besonderen Methode.)int tag
Zuordnung, die genau wie wir, würde von einem Objekt würden wir gerade erstellt haben. (Sie wissen, Sie haben einen Zeiger, weil dieid
geben.id
bedeutet nur, jede Art von Objekt.)