iOS - uitableviewcell的动态onClick功能

时间:2014-02-05 16:20:51

标签: ios uitableview onclick

使用on clickUITableview内创建didSelectRowAtIndexPath事件没有问题,问题是我宁愿设置on click事件同时设置单元格因为不是每个单元都需要on click事件,并且它们将根据它所在的单元格而有所不同。有没有办法设置点击特定的细节文本?也许创建一个与文本完美匹配的重叠隐形框架?

如果这不可行,我会做很多事情,但这将是很多代码。

如果我需要解释我的问题,请告诉我,如果我一直在混淆。感谢。

1 个答案:

答案 0 :(得分:0)

您可以将事件添加到所需单元格中的按钮,并将其格式化为标签。

[button addTarget:self action:@selector(onClickDescription:) forControlEvents:UIControlEventTouchUpInside];

然后在代码中:

-(void)onClickDescription { 
     CGPoint buttonPosition = [sender convertPoint:CGPointZero toView:self.yourTableView];
     NSIndexPath *indexPath = [self.yourTableView indexPathForRowAtPoint:buttonPosition];
    if (indexPath != nil)
    {
        //Do what you need
    }
}

自定义:

  1. 在故事板中使用“自定义单元格”添加标签和按钮以及标签1和2.

  2. 在viewForCellAtIndexPath中,只需输入:

    UILabel *label = (UILabel *)[cell viewWithTag:1]; UIButton *button = (UIButton *)[cell viewWithTag:2];

  3. 现在你可以格式化,但是你想要格式化

    label.font = .... label.textColor = ....