在单元格内的UIImageView上点击手势不会触发

时间:2015-02-20 11:12:58

标签: ios objective-c uigesturerecognizer

这是myCell init方法

- (id)init {

     [...]

     _rightImg = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 70, 70)];

    [_rightImg setUserInteractionEnabled:YES];

    UITapGestureRecognizer *tapGestureRecognizer = [
         [UITapGestureRecognizer alloc] 
         initWithTarget:self 
         action:@selector(handleRightImageTap)];

    [_rightImg addGestureRecognizer:tapGestureRecognizer];

    tapGestureRecognizer.delegate = self;

    [self.contentView addSubview:_rightImg];
}

这是我在myCell中定义的处理程序方法

- (void) handleRightImageTap {
     printf("TTTTAAAAPPPPP\n");
}

它不起作用,我不知道我做错了什么。帮助!

3 个答案:

答案 0 :(得分:1)

写下这些行并测试,我认为imageView被其他一些视图所覆盖

[self.contentView bringSubviewToFront:_rightImg];
[_rightImg setUserInteractionEnabled:YES];
[self.contentView setUserInteractionEnabled:YES];

希望这有帮助

答案 1 :(得分:0)

中做同样的事情
- (void)awakeFromNib {
//Do Same Code
}

答案 2 :(得分:0)

您的UITapGestureRecognizer代码无效。但是你的" init"方法?

如果从故事板加载来保留uitableViewCell,则应使用awakeFromNib或任何init方法,例如" - (id) initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier"从代码中试试。