0

UIScrollViewのタッチイベントを取得するにはどうすればよいですか。UIViewControllerがあり、viewControllerにscrollViewを配置しました。scrollViewにimageViewsを追加する必要があり、特定の画像がクリックされると、対応するviewControllerにリダイレクトされます。UIViewControllerにタッチイベントを追加する方法は知っていましたが、scrollViewでは機能しません。

-(void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event
{
    UITouch *touch= [touches anyObject];
    if ([touch view] == img1)
    {

        ViewController2 *viewController2=[[ViewController2 alloc]initWithNibName:@"ViewController2" bundle:nil];
        [self presentViewController: viewController2 animated:YES completion:nil];



    }
}

scrollViewのtouchsイベントを取得するにはどうすればよいですか?

4

3 に答える 3

0

これを行う唯一の方法は、カスタムを作成することです。UIScrollViewカスタムUIScrollViewはのサブクラスになりUIScrollViewます。

また、他のオプションについては、これを確認できます

于 2013-02-05T10:02:19.383 に答える
0

以下のようなものを設定します。

UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(singleTapGestureCaptured:)];
[scrollView addGestureRecognizer:singleTap];    

and you get the touch in:

- (void)singleTapGestureCaptured:(UITapGestureRecognizer *)gesture
  { 
    CGPoint touchPoint=[gesture locationInView:scrollView];
  }
于 2013-02-05T10:03:14.317 に答える
0

ScrollViewDelegate を使用でき、関数「ScrollViewDidScroll」を使用してスクロールビューのスクロール イベントを取得できます。

タップ ジェスチャ レコグナイザーをセットアップします。

UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(singleTapGestureCaptured:)];
[scrollView addGestureRecognizer:singleTap];   



- (void)singleTapGestureCaptured:(UITapGestureRecognizer *)gesture
  { 
    CGPoint touchPoint=[gesture locationInView:scrollView];
  }
于 2013-02-05T10:03:15.253 に答える