Comment voulez-vous permettre à un UIGestureRecognizer
d'un UIView
de recevoir un événement tactile, mais aussi s'assurer que l'autre, sous-jacente/superposant UIView
reçoit également le même événement tactile?
Disons que j'ai l'affichage suivant-hierachie:
Vues Une (bleu) et B (rouge) sont à la fois des sous-vues de la même superview (gris). En d'autres termes, ils sont à la fois des frères et sœurs et l'ordre décide qui couvre l'autre.
Option 1:
Vue B (rouge) a UIButton
comme son sous-vue.
Option 2:
Vue d'Une (bleu) a UIButton
comme son sous-vue.
Compte tenu de l'Option 1 pour l'amour des explications:
Vue d'Une (bleu) a un UITapGestureRecognizer
(ou peut-être même plus, d'autres UIGestureRecognizers) ci-joint. Quelle serait la meilleure approche élégante pour vous assurer que l' UIButton
ne reçoivent tous les doigts sur sa région, mais aussi à la vue d'Une (bleu) reçoit des petites touches sur sa UITapGestureRecognizer
?
Si possible par tous les moyens, la solution ne devrait pas impliquer l'extension de l' UIButton
-classe et manuellement la redirection de tous les événements à partir du bouton lui-même. Imaginez la vue B, contiennent beaucoup plus de contrôles et pas seulement sur un bouton. L'ensemble de ces contrôles devraient, en quelque sorte permettre de voir Un de recevoir de la touche sur sa UIGestureRecognizer
.
Je n'offrent deux options que je n'ai pas de soins qui, de ce point de vue (A ou B) qui vient en premier, tant que les deux reçoivent la touche.
Toutes mes démarches jusqu'à présent brusquement atteint culs-de-sac. Peut-être une coutume répondeur de la chaîne peut être une bonne solution? Je continue à penser qu'il doit y avoir une solution élégante à l'intérieur de l'ensemble de l' UIKit
/UIEvent
/UIResponder
de la pile.