0

カスタマイズされた tableviewcell サブクラスがあります。

tableview セルには、 UIImgaveView 、 UIButton 、およびその他の Controll が含まれていました。これらをtableViewcell ContentViewに追加しました。

UITapGestureRecognizer UIImageViewに適用 する必要があります。

imageview に tapGesture を適用するにはどうすればよいですか?

4

2 に答える 2

0

以下のコードを、呼び出したい場所からメソッドに入れます..:-

UITapGestureRecognizer *tapOnView = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tap:)];
    [tapOnView setNumberOfTouchesRequired:1];//Number of touches Depends on your requirement
    [tapOnView setNumberOfTapsRequired:1];//Number of taps Depends on your requirement
    [tapOnView setDelegate:self];//delegate
    contentView.userInteractionEnabled = YES;//Make view userInteractionEnabled,content view is yours image view
    [cell.contentView addGestureRecognizer:tapOnView];//Adding TapGesture to view.

 - (IBAction)tap:(id)sender
        {
            NSLog(@"your requirement");//you can perform action here.
     if ([sender isKindOfClass:[UIGestureRecognizer self]]) {
        // it's a gesture recognizer.  we can cast it and use it like this
        UITapGestureRecognizer *tapGR = (UITapGestureRecognizer *)sender;

    } else if ([sender isKindOfClass:[UIButton self]]) {
        // it's a button
        UIButton *button = (UIButton *)sender;

    }
    }

コーディングを楽しんでください..

于 2013-08-13T06:33:59.170 に答える
0
UITapGestureRecognizer *tapGR = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(onTap)];
[tapGR setNumberOfTouchesRequired:1];
[tapGR setNumberOfTapsRequired:1];
[tapGR setDelegate:self];
[cell.yourImageView addGestureRecognizer:tapGR]; // Your ImageView of contentView
[tapGR release]; //If you aren't using ARC

- (void)onTap
{
    NSLog(@"Image tapped");
}

注:-ヘッダー ファイルにインクルード<UIGestureRecognizerDelegate>していることを確認し、ユーザー インタラクションを有効にする必要がありますUIImageView
yourImageView.userInteractionEnabled = YES;

于 2013-08-13T06:16:08.523 に答える