1

ドラッグ アンド ドロップUIView機能を備えたアプリケーションがあります。ドラッグは 3 つだけにして、それ以上はさせないでください。ドラッグの回数を追跡するにはどうすればよいですか? でカウンターをインクリメントしようとしましtouchesBegan()たが、ビューをタップしてもカウンターがインクリメントされました。ビューをドラッグしたときだけ大きくしたい。UIViewまた、上部の別のビューに小さなものをドラッグ アンド ドロップするためのスニペットを提供することもできます。正しい方法を使用したかどうかはわかりません。

私のコード:

(void) touchesMoved:(NSSet*)touches withEvent:(UIEvent*)event {
    [self.view setMultipleTouchEnabled:NO]; 
    UITouch *touch = [touches anyObject]; 
    if ([touch view] == option1View || [touch view] == option2View ||
        [touch view] == option3View ||[touch view] == option4View) { 
            CGRect frame = [[touch view] frame];
            if(counter == 1){
                frame.origin.x = 10;
                frame.origin.y = 90; 
            }
            [[touch view] setFrame:frame]; 

私は触れ始めてカウンターを増やしました。カウンターの3つの場合のif条件を確認しました

4

1 に答える 1

0

Apple には、ドラッグ専用のジェスチャ認識機能があります。ですUIPangestureRecognizer。パンジェスチャのみを認識し、タップなどは認識しません。

ここにドキュメントがあります http://developer.apple.com/library/ios/#DOCUMENTATION/UIKit/Reference/UIPanGestureRecognizer_Class/Reference/Reference.html

touchesBegan()などを使用するよりも簡単にパン/ドラッグ ジェスチャを管理できます。

From Doc: UIGestureRecognizerStateEndedすべての指を離すと終了します。

状態を確認し、カウンターをインクリメントできます。

于 2012-07-24T08:36:57.047 に答える