Wie kann Sie sagen, was für ein Objekt berührt wird, in touchesBegan?
Ich weiß, dass dies eine sehr Häufig gestellte Frage, aber alle Antworten auf jeder Webseite funktionieren nicht! Wenn Sie noch nicht wissen, was ich meine, dann vielleicht diese Zeile code wird Ihnen helfen zu verstehen.
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
UITouch *touch = [[event allTouches] anyObject];
CGPoint location = [touch locationInView:self.view];
if (touch.view == nextbutton)
[self performSelector:@selector(next)];
if (touch.view == prevbutton)
[self performSelector:@selector(previous)];
if (touch.view == moreoptionsbutton)
[self performSelector:@selector(moresettings)];
}
Es nicht tun, wenn Sie Sie berühren nextbutton, prevbutton, and more optionsbutton
die UIImageViews
durch die Art und Weise. Ich habe auch versucht, mit Hilfe isEqual:
statt ==
aber das hat nicht funktioniert. Irgendwelche Vorschläge?
InformationsquelleAutor der Frage Flafla2 | 2010-04-15
Du musst angemeldet sein, um einen Kommentar abzugeben.
Müssen Sie userinteractionEnabled = JA für alle Ihre UIImageViews sonst werden Sie nicht erhalten touch-Ereignisse. Auch ändern Sie die Zeile:
zu
InformationsquelleAutor der Antwort RunLoop
Erstellte ich eine überprüfen, um sicherzustellen, dass dessen Ansicht ich erwarte angeklickt werden, bevor Sie auf.
InformationsquelleAutor der Antwort Alex Cio