UIGestureRecognizer recevoir toucher, mais de le transmettre à UIControl ainsi
Comment voulez-vous permettre à un UIGestureRecognizer
d'un UIView
pour recevoir un événement tactile, mais aussi s'assurer que l'autre, sous-jacente/superposition UIView
reçoit également le même événement tactile?
Permet de dire que j'ai la vue suivante-hierachie:
Vues (en 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 les autres.
Option 1:
Vue B (rouge) a une UIButton
comme son sous-vue.
Option 2:
Vue d'Une (bleu) a une 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 le UIButton
ne reçoivent tous les doigts sur sa région, mais aussi à la vue d'Une (bleu) reçoit des petites touches sur son UITapGestureRecognizer
?
Si possible, par tous les moyens, la solution ne devrait pas impliquer l'extension de la UIButton
de 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 main à son 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 la UIKit
/UIEvent
/UIResponder
pile.
- +1 pour un tel soigneusement fabriqués à la question 🙂
Vous devez vous connecter pour publier un commentaire.
Avez-vous essayé avec cette?