tableviewcell上的单击按钮单击单元格而不是按钮

时间:2013-08-17 22:17:12

标签: ios uitableview uibutton

我只是将自定义样式按钮拖到故事板中的单元格。问题是,当我按下按钮时,它会单击单元格,而不是按钮。

是什么导致这种情况?

我是否需要增加点击区域?如果是这样的话?

我需要将按钮放在前面吗?如果是这样的话?

谢谢!

索引路径中的行的单元格如下所示:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{

    static NSString *CellIdentifier = @"Cell";
    MainUserViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
  [cell initWithStyle:nil reuseIdentifier:nil];
  [cell.descrlptionLabel sizeToFit];
  [cell.userNameButton addTarget:self action:@selector(userNameClicked:) forControlEvents:UIControlEventTouchDown];


    return cell;
}

1 个答案:

答案 0 :(得分:1)

您的方法中不需要initWithStyle行。你应该消除它。

[cell initWithStyle:nil reuseIdentifier:nil];

单元格已出列,应该已准备好并初始化。显然,您正在使用storyboard,因此dequeue方法可以保证返回一个有效的单元格,并在必要时自动创建它。

这很可能搞砸了。

还有一些要检查的事项:确保按钮位于故事板文件的最顶层(即左侧列表中的底部项目)。您调整标签的大小可能会覆盖它。另外,请确保您没有意外将userInteractionEnabled设置为NO