UIPanGestureRecognizer Seule la verticale ou à l'horizontale

J'ai une vue qui a un UIPanGestureRecognizer pour faire glisser verticalement la vue. Ainsi, dans le module de reconnaissance de rappel, je n'mise à jour de la coordonnée de la déplacer. Le superview de ce point de vue, a une UIPanGestureRecognizer qui va faire glisser la vue à l'horizontale, juste la mise à jour de l'abscisse.

Le problème est que la première UIPanGestureRecognizer est de prendre le cas pour déplacer la vue à la verticale, donc je ne peux pas utiliser le superview geste.

J'ai essayé

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer
 shouldRecognizeSimultaneouslyWithGestureRecognizer:
                            (UIGestureRecognizer *)otherGestureRecognizer;

et les deux fonctionnent, mais je n'en veux pas. Je veux le à l'horizontale pour être détectée que si le mouvement est clairement à l'horizontale. Donc, ce serait formidable si la UIPanGestureRecognizer avait un sens de la propriété.

Comment puis-je obtenir ce comportement? - Je trouver les docs très confus, peut-être que quelqu'un peut expliquer mieux ici.

  • Il est normal de répondre à votre propre question et accepter la réponse, si vous avez trouvé la solution.
  • vraiment? Donc, peut-être que vous faites de la catégorie de geste de balayage pour recevoir la traduction et de la vitesse du geste?
  • Je ne comprends pas ce que vous dites. Si vous voulez détecter un glissement horizontal, c'est totalement et complètement intégré dans le système d'exploitation. Tout le travail est entièrement et totalement fait pour vous. Vous avez besoin de faire ... rien! 🙂 Il suffit de coller les deux lignes de code dans cet exemple .. stackoverflow.com/a/20988648/294884 Notez que vous pouvez choisir à gauche seulement" de "droite" ou "les deux".
InformationsquelleAutor LocoMike | 2011-08-17