静态单元格内的按钮的IBAction不适用于didSelectRowAtIndexPath被覆盖

时间:2015-06-16 10:30:04

标签: ios uitableview uibutton ibaction

我有一些静态UITableViewCell。其中一个里面有5个按钮。在didSelectRowAtIndexPath里面我处理所有单元格的选择事件,除了里面有按钮的单元格。问题是按钮的操作是一个单元格不起作用。 任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:1)

最后我发现问题的根源在一个完全不同的区域,heightForRowAtIndexPath正在为该单元返回错误的高度(实际上是较小的高度),

因此,控制器将触摸解释为与我认为触及的实际位置完全不同的地方

答案 1 :(得分:0)

您没有cellForAtIndexPath方法,但是您可以实现tableView:willDisplayCell:forRowAtIndexPath:方法并为每个按钮添加目标,如下所示:

- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath {
    // get a reference to button
    UIButton *button = (UIButton *)[cell viewWithTag:1];
    [button addTarget:self action:@selector(buttonClicked:) forControlEvents:UIControlEventTouchUpInside];
}