如何从按下按钮事件获取单元格数据(自定义tableview单元格)

时间:2011-11-30 04:19:50

标签: iphone objective-c ios ios4

我的自定义tableview单元格上有一个按钮和标签。这就是我设置按钮动作的方式。

[cell.btnPlus addTarget: self action: @selector(plusButtonPressed) forControlEvents: UIControlEventTouchUpInside];

这种方法运行正常。我想获得按下按钮的单元格的标签文本。

我怎么能这样做?

4 个答案:

答案 0 :(得分:0)

向指向单元格的按钮添加属性,或者,如果btnPlus是单元格的子视图,则使用btnPlus.superview.textlabel.text

答案 1 :(得分:0)

  

将标签设置为该按钮并标签,然后您就可以获得该标签文本   使用带标签选项的视图

答案 2 :(得分:0)

将@selector(plusButtonPressed)更改为@selector(plusButtonPressed :)(注意最后添加的冒号)

然后在你的

- (void)plusButtonPressed:(UIButton*)sender {
    NSString *theText = sender.superview.textlabel.text;
}

(假设加号按钮被添加到UITableViewCell的contentView中)

答案 3 :(得分:0)

将标签设置为单元格:

cell.contentView.tag = indexPath.row+10000*indexPath.section; //or any you like
[cell.contentView addSubview:button];

然后,在按钮的回调中:

int raw=0;
int section=0;
long tag = [sender superview].tag;
NSLog(@"tag: %ld", tag);
for (int i = 0; i<[data count]; i++) {
    if (tag>=10000) 
    {
        tag-=10000;
        section++;
    }
    else i = [data count];
}
raw = tag;

现在,您可以完全访问您的手机。使用计算的rawsection来获取对单元格的访问权限。