TapGestureRecognizer仅在视图调整后的视图之外?

时间:2014-05-13 11:15:10

标签: ios uitableview

我在UITapGestureRecognizer上添加了uitableviewcell

Mycell *outCell = (Mycell *)[tableView dequeueReusableCellWithIdentifier:cellIdentifier];
            if (!outCell) {
                outCell = [[Mycell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellIdentifier];
                UITapGestureRecognizer *recognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleTapGesture:)];
                [outCell.bubbleView addGestureRecognizer:recognizer];
            }

outCell.bubbleView被添加到contentview,outCell.bubbleView根据图像大小调整大小传递给Mycell。 当我的应用程序运行时,TapGestureRecognizer仅在我点击单元格顶部时触发(其中高度等于默认单元格高度,单元格的其他部分不是) 对我的问题有任何答案吗?非常感谢。

1 个答案:

答案 0 :(得分:1)

尝试以下代码

    Mycell *outCell = (Mycell *)[tableView dequeueReusableCellWithIdentifier:cellIdentifier];
    if (!outCell)
    {
        outCell = [[Mycell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellIdentifier];
        UITapGestureRecognizer *recognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleTapGesture:)];
        UIView *tapView = [[UIView alloc] initWithFrame:outCell.bounds];
        tapView.backgroundColor = [UIColor clearColor];
        tapView.autoresizingMask = UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleWidth;
        [tapView addGestureRecognizer:recognizer];
        [outCell addSubview:tapView];
    }