2011-08-18 20 views
5

さて、私はサブビューviewBでviewAを持っています。両方ともジェスチャーレコーダーが割り当てられています。今私は、同時にそれらの両方を呼び出すことができるようにUIGestureRecognizer検出順序

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

を使用しています。今度はgestureRecognizerがアクティブになる場合、それは

NSLog(@"This is..."); 

を呼び出すことを言わせそしてotherGestureRecognizerがアクティブになるかどうかは問題には、両方のgestureRecognizersが同時に起動得れば、何のためにではありませんということです

NSLog(@"Sparta!"); 

を呼び出しますそう呼ばれているので、ときどき

NSLog(@"Sparta!"); 

が最初に呼び出され、時にはそれが逆になります。確認して、常に

NSLog(@"This is..."); 

が最初に呼び出される方法はありますか?

答えて

-1

私はUIGestureRecognizerの最小プレス時間を短くしました。これは、最初に呼び出されるはずのミリ秒で、ジョブを実行しました。

0

達成しようとしていることについてさらに説明してください。 あなたはあなたのサブビューをfirstresponderにしようとしていますが、その後もあなたの親ビューは応答しますか?あなたは両方の応答を持っているが、固定された順序でいるように?

もしそうなら、両方のビューでジェスチャー認識を行うことができます。最初の応答(これは私が想定しているあなたのサブビューでなければならない)をチェックし、親がこの "変更"に応答するように代理プロトコルを作ってください。

とにかく、あなたのところにはもう少し説明があると、正確に理解することができます。