2010-05-06 2 views
1

J'utilise un UILongPressGestureRecognizer dans mon application. Il s'agit d'un système de reconnaissance de gestes continu qui signifie que le sélecteur se déclenche continuellement pour la cible avec laquelle il a été initialisé. Je voudrais que le sélecteur ne soit déclenché qu'une seule fois. J'ai essayé d'empêcher que d'autres sélecteurs ne soient déclenchés en réglant la propriété enabled de l'outil de reconnaissance de gestes sur Note la première fois que le sélecteur est déclenché, mais cela ne prend effet qu'après le déclenchement du sélecteur. Comment puis-je m'assurer que le sélecteur est déclenché une seule fois?Empêche UIGestureRecognizer de déclencher le sélecteur plusieurs fois

Répondre

0

Je n'ai pas réussi à trouver un moyen de forcer le sélecteur à être déclenché une seule fois. La solution de contournement que j'ai utilisée consiste à définir la propriété activée de l'outil de reconnaissance de gestes sur NON après la première ouverture, puis à le réactiver si nécessaire.

2

Le sélecteur sera déclenché à plusieurs reprises; seulement agir de l'intérieur si [sender state] == UIGestureRecognizerStateBegan.

+0

C'est une bien meilleure approche que celle acceptée. –

+0

Oui, malheureusement, il y a six mois de retard. J'espère que Run Loop a compris cela par lui-même. C'est la façon sûre, non-side-effecty de le faire. :) –

Questions connexes