Créer surimpression UIView pour saisir toutes les touches et les gestes


0

j'ai une hiérarchie de vue qui comprend un UIView haut niveau avec un UIScrollView imbriqué qui contient de nombreux UIViews imbriqués contenant UILabels, UITextFields etc.

Je voudrais superposer une UIView sur le dessus de tout pour que je puisse intercepter certains événements tactiles et glisser (essentiellement pour l'édition de la mise en page globale). Je voudrais que l'UIScrollView fonctionne encore, donc j'ai besoin de passer (tous?) Des touches et des gestes à travers la superposition aux vues sous-jacentes. Lorsque certaines touches se produisent, j'intercepte le toucher et crée une situation de déplacement où la sous-vue touchée sera déplacée par programme dans les sous-vues. Quelle est la meilleure façon de créer l'incrustation UIView pour que toutes les touches et tous les gestes puissent être passés? Certains exemples de code seraient grandement appréciés.

Merci beaucoup.

0

En fin de ma structure, je révisais donc la superposition traitée tout en utilisant des gestes de pan


0

Sous la superposition UIView et passer outre la touchesBegan, .. des méthodes telles que touchera ceci:

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event 
{ 
    // Do your stuff 
    [[[self view] nextResponder] touchesBegan:touches withEvent:event]; 
} 

Faites la même chose pour touchesMoved, touchesEnded et touchesCancelled.

Non 100% sûr que cela fonctionnera, lui donner un coup :)

  0

Cela ne fonctionne pas. Je crois qu'il transmet le contact à l'UIView «de base» ou de «racine», en évitant tous les UIViews assis au-dessus de la base. C'est sans doute parce que la superposition est en fait une sous-vue directe de la base, pas de toutes les autres vues qui se trouvent entre les deux. 23 mai. 122012-05-23 13:41:36