/ / iPhone上のビューから兄弟/子ビューへのタッチイベントの受け渡し - iphone、ココアタッチ、uikit

ビューからiPhone上の兄弟/子供ビューにタッチイベントを渡しますか? - iphone、cocoa-touch、uikit

私は現在私がカスタムをするところ1つのUIViewを持っています図。そのビューを、いくつかのコントロール(ラベル、ボタンなど)を持つ別のビューとオーバーレイしたいです。このオーバーレイビューは透明になるので、描画ビューを見ることができます。

2つの質問:

1)図面を兄弟にするかオーバーレイビューの子? 2)その子供の場合、(ボタンに移動したもの以外の)タッチイベントは自動的に図面ビューに表示されますか?それが兄弟ならば、どのようにあなたはタッチイベントを渡しますか?

ありがとう。

回答:

回答№1は1

私はタッチイベントがに渡されるとは思わない自動的に別のビューあなたはそれを委任する必要があります、これをする多くの方法があります。 1つはViewControllerを使用して2つのビューを管理し、ビューAからのタッチイベントをView Controllerに通知してビューBに転送することができます。2つのビューを密に結合したい場合、一方のビューにもう一方のビューが含まれる場合タッチが発生したときには、お互いに話し合って話し合うべきです(プログラミングのベストプラクティスではないかもしれません)。


回答№2の場合は0

それで、もう少し実験した後、私が次の階層を使うならば、私はそれがわかりました:

  • オーバーレイビュー | ---ボタン | ---図面ビュー

その順序で - そして、タッチイベントは正しいビューを選択します(すなわち、クリックされるとボタンに渡され、タッチされると描画ビューに渡されます)。