0

この libk からコード例をダウンロードできます: https://github.com/mriddi/ExempleCustomGestureRecognizer.git

次のようなカスタム ジェスチャ認識クラスを作成します。

@protocol MyGestureRecognizerDelegate <UIGestureRecognizerDelegate>
@optional
-(void) willDo;
@end

@interface MyGestureRecognizer: UIGestureRecognizer
{
    …
}
@property (nonatomic, assign) id <MyGestureRecognizerDelegate> delegate;
…
@end

@implementation MyGestureRecognizer
@synthesize delegate;
…
-(void) call{
    [delegate willDo];
}
…
@end

私のViewControllerはMyGestureRecognizerDelegateプロトコルを採用しています。ViewControllerクラスのインスタンスを作成します。

MyGestureRecognizer * grFerst;
MyGestureRecognizer * grSecond;
grFerst.delegate=self;
grLeft.delegate=self;
[self.view addGestureRecognizer: grFerst];
[self.view addGestureRecognizer: grSecond];

両方のジェスチャ認識インスタンスを同時に機能させたいと考えています。ViewControllerメソッドに追加しようとしています

shouldRecognizeSimultaneouslyWithGestureRecognizer

しかし、このメソッドは呼び出されませんNSLog。関数を使用して確認しました。

この問題の解決を手伝ってください (両方のジェスチャ認識機能を同時に動作させてください)。

4

1 に答える 1

1

たぶん、ジェスチャーを割り当てる必要があります

MyGestureRecognizer * gesture = [[MyGestureRecognizer alloc] initWithTarget:self action:nil];
gesture.delegate = self;
[self.view addGestureRecognizer:gesture];

または、コントロール ホイールをターゲットとして使用して、すべての角度計算をそこで行うこともできます。次に、mainViewController に委任します。

于 2012-12-13T19:31:30.057 に答える