2010-12-28 7 views
0

私のiPhoneゲームのappDelegateには、「UIWindow window」メンバ変数があります。ウィンドウにUIImageViewsを追加し、ゲームのプレイ中にそれらを移動します。私はUIWindowで触れたいと思います。 どうすればいいですか? UIWindowをサブクラス化する必要はありますか?touchesBeganとtouchesEndedはUIWindowで

私はtouchesBegan追加してみました:withEventtouchesEnded:ウィンドウにwithEvent方法を彼らはUIImageViewsで覆われているウィンドウに起因する可能性が(と呼ばれていません...例えばゲームの背景がUIImageViewで、画面全体をカバーします)。

乾杯!

答えて

2

はい、UIImageViewsがウィンドウをカバーしていて、タッチを受け入れる場合、タッチは通過しません。このようなコードをUIImageViewのtouchesBeganに配置すると、オブジェクトのレイヤー内の次のオブジェクトにタッチすることができます。私はそれぞれのタッチイベントをキャプチャし、それらに対処UIImageView持っていることについて考えることをお勧めします(ウィンドウまたはメインUIViewのは、私のゲームで物事の束を制御している)の前にこの道を行った

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

。 UIImageViewは、必要に応じて他のオブジェクトに情報を渡すことができます。

AppleのUIWindowView Programming Guideのドキュメントは、コードをウィンドウの外側に置き、ビューに配置するようにしてください。

関連する問題