2

以下のコードを使用して、右/左のスワイプイベントをUIImageViewオブジェクト(photo_viewと呼ばれます)に統合していますが、iPhoneシミュレーターとデバイスでのテスト後に機能しませんでした。以下のメソッドhandleLeftSwipeおよびhandleRightSwipeは、ロギングがデバッガーログに何も出力しなかったため、呼び出されません。コードは次のとおりです。

- (void)viewDidLoad
{
     [super viewDidLoad];

     UISwipeGestureRecognizer *leftSwipeRecognizer = [[UISwipeGestureRecognizer alloc]  initWithTarget:self action:@selector(handleLeftSwipe:)];
     leftSwipeRecognizer.direction = UISwipeGestureRecognizerDirectionLeft;
     leftSwipeRecognizer.numberOfTouchesRequired = 1;
     [photo_view addGestureRecognizer:leftSwipeRecognizer];
     leftSwipeRecognizer.delegate = self;
     [leftSwipeRecognizer release];

     UISwipeGestureRecognizer *rightSwipeRecognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(handleRightSwipe:)];
     rightSwipeRecognizer.direction = UISwipeGestureRecognizerDirectionRight;
     rightSwipeRecognizer.numberOfTouchesRequired = 1;
     [photo_view addGestureRecognizer:rightSwipeRecognizer];
     rightSwipeRecognizer.delegate = self;
     [rightSwipeRecognizer release];

}


- (void)handleLeftSwipe:(UISwipeGestureRecognizer *)recognizer
{
     NSLog(@"handleLeftSwipe called");
}

- (void)handleRightSwipe:(UISwipeGestureRecognizer *)recognizer
{
     NSLog(@"handleRightSwipe called");
}

理由は何ですか?

支援のために事前にThx、

ステファン

4

2 に答える 2

7

UIImageViewインスタンスのデフォルトuserInteractionEnabledNO。に設定してみてくださいYES

于 2011-11-04T15:30:09.860 に答える
2

<UIGestureRecognizerDelegate>.hファイルにもを含めていることを確認してください。

于 2013-04-24T07:03:41.857 に答える