2010-12-20 5 views
2

Ich habe eine Sicht auf die iPhone-Kamera-Ansicht überlagert. In dieser Ansicht habe ich einige uibuttons, die in Positionen angezeigt werden, die von Werten von Beschleunigungsmesser/Kompass abhängen. Ich muss ein Ereignis auslösen, wenn der Benutzer in der Ansicht nachbessert, aber er reinigt nicht innerhalb der uibuttons, ich meine, die umgekehrte Aktion der Nachbesserung in den uibuttons. Wer weiß eine Art, dies zu tun? Danke!Feuer-Ereignis, wenn Touch up in uiview und außerhalb Taste

Antwort

0

ich Ihre Möglichkeiten versucht, aber es funktioniert nicht. Die Ansicht, dass ich versucht habe, das Ereignis auszulösen, befand sich in einem TabBar-Element in einer Kameraansicht. Daher glaube ich, dass die Responder-Kette nicht damit arbeitet. Schließlich löste ich das Problem, die Overlay-Ansicht der Ersthelfer mit: [viewOverlay.view becomeFirstResponder];

1

Wenn Sie den UIResponder touchesBegan implementieren: withevent: Methode ..

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event 

... auf Ihrer Ansicht nach werden Sie in der Lage zu sagen, wenn der Benutzer außerhalb der Tasten gedrückt hat.

Weitere Informationen finden Sie unter UIResponder Class Reference.

0

können Sie z.B. zuweisen ein Event-Handler (IBAction) zu UiVeiw und seine UIButtons und dann Absender Parameter vergleichen:

-(IBAction) viewClicked :(id) sender { 
    if (id == myView) ... 
}