2010-12-28 11 views
0

Die AppDelegate meines iPhone-Spiels hat eine Mitgliedsvariable "UIWindow window". Ich füge UIImageViews in das Fenster ein und verschiebe sie während des Spiels. Ich möchte mit Berührungen auf dem UIWindow umgehen. Wie kann ich das tun? Muss ich UIWindow ableiten?touchesBegan und touchesEnded auf einer UIWindow

habe ich versucht, das Hinzufügen des touchesBegan: withevent und touchesEnded: withevent Methoden zum Fenster, aber sie sind nicht genannt (möglicherweise aufgrund der Fenster durch UIImageViews ... zum Beispiel bedeckt ist, das Spiel Hintergrund ist ein UIImageView und es deckt den gesamten Bildschirm ab).

Prost!

Antwort

2

Ja, wenn die UIImageViews das Fenster abdecken und Berührungen akzeptieren, werden die Berührungen nicht durchgelassen. Sie können Code wie diesen in die Berührungen Ihres UIImageView einfügen, um Berührungen bis zum nächsten Objekt in den Ebenen von Objekten zu übergeben.

[self.nextResponder touchesBegan:touches withEvent:event]; 

diesen Weg gegangen, bevor (das Fenster oder ein Haupt UIView ein paar Dinge in meinem Spiel kontrollieren haben) Ich möchte Sie ermutigen, darüber, dass jedes UIImageView Capture Touch-Ereignisse zu denken und mit ihnen umgehen. Die UIImageView kann dann bei Bedarf Informationen an andere Objekte weiterleiten.

Apples Dokumentation für UIWindow und die View Programming Guide scheinen darauf hinzuweisen, dass Sie versuchen sollten, Code außerhalb des Fensters zu behalten und in Ansichten zu platzieren.

Verwandte Themen