Titre plus ou moins dit tout. En réponse à un événement touchesBegan
, mon UIViewController
se recolorise et ajoute des sous-vues. Il ne reçoit jamais le touchesEnded
. Je suppose que les sous-vues ajoutées interceptent l'événement. J'ai essayé d'appeler resignFirstResponder
sur les sous-vues en vain.Ne pas recevoir les touchéesEnded/Moved/Canceled après l'ajout de subView
Le code fonctionne correctement lorsque je n'ajoute pas les vues enfants et que les événements tactiles sont appelés normalement.
Des idées?
Merci
EDIT: Un peu de détails et comment je l'ai fixé. Fondamentalement, j'avais une vue principale avec quelques sous-vues, quand j'ai touché la sous-vue, l'événement serait transmis à la vue principale, mais sur cet événement, je supprimais les sous-vues et en ajoutant de nouvelles à leur place. Le fait que le toucher provienne d'une sous-vue qui n'existait plus signifiait que le reste du toucher était perdu.
Je fixe en surchargeant hitTest: withEvent à mon avis maître, d'arrêter touche jamais à vous faire tester contre les sous-vues
N'importe quel code? +++++ – kennytm
Hmmm, eh bien le code est assez complexe, mais j'ai codé l'exemple le plus simple possible pour poster ici et ça a bien fonctionné ... donc +1 pour le nudge dans la bonne direction ...... ........ postera quand j'ai compris la différence – Sam