0

我在表格的每个表格视图单元格上添加了一个自定义 UIButton。我将此按钮分配给 AccessoryDe​​tailDisclosureButton。所以简而言之,它是一个自定义的 AccessoryDe​​tailDisclosureButton。这就是我在 cellforrowatindexpath 中的做法:

UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
    cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] ;
    UIButton *ACC = [UIButton buttonWithType:UIButtonTypeCustom];
    ACC.frame = CGRectMake(0, 0, 25, 25);
    if(iPhone)
    {
        [ACC setImage:[UIImage imageNamed:@"select_arrow.png"] forState:UIControlStateNormal];
    }
    else
    {
        ACC.frame = CGRectMake(0, 0, 60, 60);

        [ACC setImage:[UIImage imageNamed:@"select_arrow@2x.png"] forState:UIControlStateNormal];
    }
    cell.accessoryView = ACC;
    cell.accessoryType = UITableViewCellAccessoryDetailDisclosureButton;
}

现在的事情是,我想对位于 didSelectRowAtIndexPath 中的 AccessoryDe​​tailDisclosureButton 执行相同的操作,我会在 accessoryButtonTappedForRowWithIndexPath 方法中编写 didSelectRowAtIndexPath 的主体,但它不起作用。

现在如果我评论 cell.accessoryView = ACC; 在上面的代码中。它会工作得很好。但我无法从附件按钮中删除图像

我怎样才能摆脱它。

任何帮助将不胜感激

谢谢

4

1 回答 1

0

您必须向按钮添加目标和选择器。

[ACC addTarget:self action:@selector(handleRowSelection:)
     forControlEvents: UIControlEventTouchUpInside];

话虽如此,您应该避免引入不添加功能的新 UI 元素。

于 2013-07-16T15:22:23.463 回答