2016-11-14 11 views
0

、どのようなAppleのドキュメントの言うことは次のとおりです。のUIViewのuserInteractionEnabled財産

... NOに設定すると、ユーザーイベント-など ビューのためのタッチとキーボード意図としては、から無視され、除去されますイベントキュー に設定するとYES、イベントが正常に...

ビューに配信されているので、私は2つのUIViewインスタンス、ABを持って、BAのサブビューで、両方のデフォルトでuserInteractionEnabledYESを持っています。

は今、私はBを設定 - サブビューのuserInteractionEnabledNOにし、AさんがYESであり、いくつかのジェスチャーが一部のユーザーイベントに応答するAに追加している間。

私は、画面をタップすると、Appleのドキュメントによると、このtap eventBによって無視されるだろう - そのuserInteractionEnabledNOであることから、サブビュー。

なぜこのtap eventが「イベントキューから削除されますか」私はAがまだresponder's chainに従ってこのイベントをキャプチャできると思いました。イベントがイベントキューから削除された場合、Aはどのようにこのイベントをキャプチャできますか?

簡単に言えば、各UIViewインスタンスに独自のイベントキューがあるかどうかを知りたいと思いますか?

もしそうでなければ、1つのビューのスーパービューがイベントキューから削除された後にそのタップイベントをキャプチャできるのはなぜですか?

また、このevent queueに記載されているAppleの意味は?

+0

あなたが求めているでは、iOSの内部機構の後ろに何が起こっているのか、タッチイベントを取得するか、でしょうか? – mkeremkeskin

+0

@mkeremkeskinなぜ私はそれを得るだろうイベントが削除されるので、私は意味ですか? – Boris

+0

私はあなたがiOSの内部メカニズムを求めていると思っていました。タッチイベントはサブビューBから削除されますが、スーパービューAは引き続きそれらを取得します。 Aを無効にすると、すべてのビューがタッチイベントの再生を停止します。私は問題はApple Docが十分にはっきりしていないと思う。また、あなたはこのリンクをチェックすることができますhttp://www.programering.com/a/MjM4cjMwATE.html – mkeremkeskin

答えて

0

「ビューのために意図されたものは、無視され、イベントキューから削除されました」と思う。 Event Delivery: The Responder ChainのAppleドキュメントを見ると、システムがそれを処理できるオブジェクトを見つけるまで、タップイベントがそのビューの一連のレスポンダを移動することは明らかです。ビューを対象

、私は(UIButtonの例えばtouchUpInsideイベント)として見ることが

+0

私はAppleが意味することを教えている 'イベントキュー'であることを知りたいです – Boris

+0

申し訳ありませんが、私はあなたの質問に誤解しました。私は私の答えを更新した、それはあなたのすべての質問に答えることができないかもしれないが、私はいくつかの光を出すことを願って:-) –

+0

私の記事をチェックすると、私はすでに 'レスポンダーチェーン'を、私はそれに精通しているが、 「除去される」とは、「レスポンダーチェーン」と衝突することになる。 – Boris

関連する問題